gpt4 book ai didi

itext - 使用 iText 填充现有的 pdf 文本字段

转载 作者:行者123 更新时间:2023-12-03 18:46:07 31 4
gpt4 key购买 nike

我已经创建了一个带有一些文本字段的 pdf 文档。我可以使用 Adob​​e 阅读器填充这些文本字段并将这些值保存在该文件中。

我的问题是,我可以使用 iText 以编程方式执行此操作吗?如果可能,请告诉我在哪里可以找到一些示例?

最佳答案

这在 iText 7 Jump-start tutorial 中有解释,更具体地说是在 chapter 4 :

这种形式:

enter image description here

可以这样填写:

PdfDocument pdf =
new PdfDocument(new PdfReader(src), new PdfWriter(dest));
PdfAcroForm form = PdfAcroForm.getAcroForm(pdf, true);
Map<String, PdfFormField> fields = form.getFormFields();
fields.get("name").setValue("James Bond");
fields.get("language").setValue("English");
fields.get("experience1").setValue("Off");
fields.get("experience2").setValue("Yes");
fields.get("experience3").setValue("Yes");
fields.get("shift").setValue("Any");
fields.get("info").setValue("I was 38 years old when I became an MI6 agent.");
// form.flattenFields();
pdf.close();

结果如下所示:

enter image description here

如果您取消注释该行 form.flattenFields();然后你会得到这个:

enter image description here

当表单被展平时,字段被删除,只剩下内容。

如果 PDF 是动态 XFA 表单,那么您应该提供一个 XML 流,并且您应该阅读常见问题解答: How to fill out a pdf file programmatically? (Dynamic XFA)

由于您似乎是 iText 的新手,因此假设您将使用最新版本的 iText(即 iText 7),而不是正在逐步淘汰(iText 5)或过时的版本(iText 之前的所有版本) 2)。但是,如果您出于任何原因选择使用 iText 5,那么您的问题是 How to fill out a pdf file programatically? 的副本。 (在这种情况下,您的问题应作为副本关闭)。

关于itext - 使用 iText 填充现有的 pdf 文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47179342/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com