【问题标题】:C# Unable to update the text using itext sharpC# 无法使用 itextsharp 更新文本
【发布时间】:2017-01-27 12:10:16
【问题描述】:

根据我之前的帖子ITextsharp to edit existing pdf,我能够以交互方式保存 PDF。之后,我开始编写以下代码来修改内容并将其保存为 PDF,如下所示,但是当我尝试打开文件时,它显示的是 There was an error opening in the document. The file is damaged and could not be repaired

这是我的代码

PdfReader reader = new PdfReader(@"E:\\Test.pdf");
using (MemoryStream memoryStream = new MemoryStream())
{
    PdfStamper pdfStamper = new PdfStamper(reader, memoryStream, '\0', true);
    pdfStamper.FormFlattening = true;
    AcroFields af = reader.AcroFields;
    string[] fields = pdfStamper.AcroFields.Fields.Select(x => x.Key).ToArray();
    for (int key = 0; key <= fields.Count() - 1; key++)
    {
      pdfStamper.AcroFields.SetField(fields[key], txtApplicantName.Text);
    }
    Byte[] bytes= memoryStream.ToArray();
    File.WriteAllBytes(@"E:\\Test1.pdf", bytes);
}

谁能告诉我哪里做错了

【问题讨论】:

    标签: winforms c#-4.0 itext


    【解决方案1】:

    您忘记关闭PdfStamper

    pdfStamper.Close(); // <===
    Byte[] bytes= memoryStream.ToArray();
    File.WriteAllBytes(@"E:\\Test1.pdf", bytes);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多