我在使用 iText7 7.1.6 和 Visual Studio 2019 时遇到问题。我的程序已经运行一年了,但刚刚将 Visual Studio(社区)从 16.6.1 更新到版本 16.6.2,我进行了重建,但没有更改任何内容。现在,当我运行该程序时,我得到一个 System,NullReferenceException 对象引用未设置为对象异常的实例,复制PdfFont font = PdfFontFactory.CreateFont(iText.IO.Font.Constants.StandardFonts.HELVETICA);到我的笔记本电脑仍然运行 16.6.1 的完全相同的解决方案运行得很好。难道是VS版本的问题?知道我可以从哪里开始寻找吗?
using (PdfDocument pdf = new PdfDocument(new PdfWriter(saveFileDialog1.FileName, new WriterProperties().AddXmpMetadata().SetPdfVersion(PdfVersion.PDF_2_0))))
{
PdfDocumentInfo info = pdf.GetDocumentInfo();
info.SetTitle("Old Info");
info.SetAuthor("G.F. Whitmarsh");
using (Document document = new Document(pdf, PageSize.A4, false)) // Don't flush immediately
{
try
{
document.SetTopMargin(120f);
document.SetBottomMargin(50f);
document.SetLeftMargin(50f);
MyEventHandler meh = new MyEventHandler();
pdf.AddEventHandler(PdfDocumentEvent.END_PAGE, meh);
meh.Boat = s;
meh.ToWeb = ToWeb.Text;
meh.DateToInternet = DateToInternet.Text;
PdfFont font = PdfFontFactory.CreateFont(iText.IO.Font.Constants.StandardFonts.HELVETICA); //>>> Here …Run Code Online (Sandbox Code Playgroud) 如何在 iText 7 (.Net) 中添加元数据(标题、作者等)。我发现的所有线程和示例似乎都使用旧格式
\n\ndocument.addTitle(\xe2\x80\x9cTitle\xe2\x80\x9d); \nRun Code Online (Sandbox Code Playgroud)\n\n看来你可以\xe2\x80\x99t 在 iText 7 中执行此操作。
\n\n谢谢
\n