我想在预制的 PDF 文档中填写表单域,但在运行 AcroForm 时收到 Null Refrence 错误。
string fileN4 = TextBox1.Text + " LOG.pdf";
File.Copy(Path.Combine(textBox4.Text + "\\", fileN4),
Path.Combine(Directory.GetCurrentDirectory(), fileN4), true);
// Open the file
PdfDocument document = PdfReader.Open(fileN4, PdfDocumentOpenMode.Modify);
PdfTextField currentField = (PdfTextField)(document.AcroForm.Fields["<CASENUM>"]);
//const
string caseName = TextBox1.Text;
PdfString caseNamePdfStr = new PdfString(caseName);
//set the value of this field
currentField.Value = caseNamePdfStr;
// Save the document...
document.Save(fileN4);
PdfTextField currentField = (PdfTextField)(document.AcroForm.Fields["<CASENUM>"]);
错误发生的地方也是如此 。似乎 AcroForm 甚至无法识别这些字段。
另一种选择是在 PDF 中查找和替换文本(不使用 itextsharp,因为由于许可而无法使用)。
任何帮助都是极好的!