我一直在使用activePDF Toolkit很长一段时间,但我想将我的解决方案转换为iTextSharp。我正在比较一个与另一个的性能,并发现在填写PDF上的表单字段时,iTextSharp比activePDF慢。这是我用于iTextSharp的代码:
using (MemoryStream memoryStream = new MemoryStream())
{
PdfReader pdfReader = new PdfReader(template);
PdfStamper pdfStamper = new PdfStamper(pdfReader, memoryStream);
pdfStamper.FormFlattening = true;
AcroFields pdfFormFields = pdfStamper.AcroFields;
foreach (Field f in fields)
pdfFormFields.SetField(f.Name,f.Value);
}
每个表单只会慢几毫秒,但在创建单个PDF时处理数百到数千个表单时会增加。我希望可能有不同的方法来设置字段的值,但我没有看到一个(我也看了一下AcroFields.cs。)
有人对此有何想法?
答案 0 :(得分:3)
你可能永远不会达到相同的速度。 ActivePDF Toolkit是带有.NET包装器的本机32位和64位代码。我们可以(并且确实)总能找到调整和提高性能的方法,但托管代码受CLR的支配。