问题描述
我需要将一些 html 转换为 PDF。我遇到了 IText7,它看起来是一个不错的解决方案。
我正在 .net core 3.1 中开发
string basicPage = "<html><body><h1>My First heading</h1><p>My first paragraph.</p></body></html>";
using (FileStream pdfDest = File.Open(@"C:\Users\Trevo\Desktop\output.pdf",FileMode.OpenorCreate))
{
ConverterProperties converterProperties = new ConverterProperties();
HtmlConverter.ConvertToPdf(basicPage,pdfDest,converterProperties);
}
错误是每个人的最爱:
未将对象引用设置为对象的实例。
内部异常为空,唯一的线索是 SerializationStackTraceString 是:
在 iText.IO.Font.FontCache..cctor()
所以,它指向与字体有关的东西?
我发现的唯一建议是清理各种目录和缓存。我从头开始创建了一个干净的解决方案,但发生了同样的错误。
有人可以提供任何帮助吗?
解决方法
尝试使用默认字体提供程序
var converterProperties = new ConverterProperties();
converterProperties.SetFontProvider(new DefaultFontProvider(true,true,true));
,
请看这个:
还有这个:
iText7 convert HTML to PDF "System.NullReferenceException."
我希望能够将它们中的任何一个标记为重复,因为它们都是相同的问题 - iText7 自己的代码的内部问题,我们基本上必须忽略。但是,我无法将它们标记为重复,因为只有在接受其中一个答案时,该功能才会起作用。
但我只是想让你知道,这不是你的问题,而是他们的问题,所以在他们修复之前,请确保你在设置中启用了“Just My Code”。