【问题标题】:Filling PDF-Form-Fields with iTextSharp使用 iTextSharp 填充 PDF 表单域
【发布时间】:2012-07-03 08:03:35
【问题描述】:

我尝试使用 C# 填写 PDF 表单。但不知何故,它不起作用。问题:fields 对象(在行中:fields.SetField("Name", "Peter");)似乎是null

这是我的代码:

public static void FillForm()
{
    String pdfTemplate = @"c:\Users\Hagen\Desktop\formular.pdf";
    String newFile = @"c:\Users\Hagen\Desktop\formular_fertig.pdf";
    PdfReader pdfReader = new PdfReader(pdfTemplate);
    PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(newFile, FileMode.Create));
    AcroFields fields = pdfStamper.AcroFields;
    fields.SetField("Name", "Peter");
    pdfStamper.Close();
}

【问题讨论】:

  • 您的代码与在 Adob​​e Acrobat Pro 中创建的表单完美配合(复制/粘贴)。

标签: c# itextsharp


【解决方案1】:

我记得我第一次尝试填写表单域时遇到了类似的问题。初始化 pdfStamper 的行;

PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(newFile, FileMode.Create));

尝试像这样向压模对象添加读写权限。

PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(newFile, FileMode.Create, FileAccess.ReadWrite));

这可能是你的问题。我不记得我自己是如何解决这个问题的,但这就是我最初想到的。它很可能正在尝试写入字段值,但压模没有完成此操作所需的 FileAccess。

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-08
    • 2015-04-17
    • 1970-01-01
    • 1970-01-01
    • 2014-10-24
    • 1970-01-01
    • 2012-03-10
    相关资源
    最近更新 更多