我正在评估 Aspose.Net - 到目前为止它非常适合我的需求。(ITextSharp、PDFOne、CLPrint、Adobe 和 ABCPdf (WebSupergoo) 不能满足我的需求——不是这个问题的重点,所以请不要回答“你试过 X 了吗?”)
我想从文件中加载一次 PDF,然后在循环中设置一些表单字段,然后保存它。效果很好,除了我注意到文件大小不断增长。我认为这是由于表单字段,但事实并非如此......请注意这个令人不安的代码和结果:
编码
static void Main(string[] args)
{
var form = new Aspose.Pdf.Facades.Form(@"c:\test.pdf");
for (int i = 0; i < 100; i++)
{
using (var tempStream = new MemoryStream())
{
form.DestStream = tempStream;
form.Save();
Console.WriteLine("Size: " + tempStream.Length);
}
}
}
令人不安的结果
你们有没有人使用 Aspose 加载一次 PDF,然后多次保存,并以某种方式克服了不断增长的文件大小问题?
PS - 如果我每次都重新更新对象,文件大小会保持较低,但这会更慢