1

我想从另一个模板创建一个pdf模板,结果pdf仍然是模板然后我可以用数据填充它。我尝试使用PdfStamper但结果pdf不是模板,任何人都可以帮助我,谢谢。

4

1 回答 1

1

让我们根据 PDF 模板的性质区分两种情况:

您正在谈论 XFA 模板:

在这种情况下,PDF 只是定义表单的 XML 流的容器。更改它的唯一方法是编辑 XML。最好使用 Adob​​e LiveCycle Designer手动完成,但如果您真的想以编程方式完成,您可以使用 iText 从 PDF 中提取 XML,使用任何类型的 XML 编辑软件操作 XML,最后将 XML 放回使用 iText 的 PDF。编程解决方案非常困难,因为它要求您熟悉 XFA 语法,并且 XFA 的规范包含数百页。

您在谈论 AcroForm 模板

在这种情况下,根字典有一个/AcroForm字典,其中一个条目是一个/Fields非空数组。PdfReader您可以为此模板创建一个实例并将阅读器对象传递给PdfStamper. 然后,您创建所需的额外字段(文本字段、按钮字段......)并使用该addAnnotation()方法将它们添加到压模中。

这在SubscribeForm示例中显示。我们有一个现有的模板subscribe.pdf,我们向它添加了几个按钮,从而产生了新的模板subscribe_me.pdf

如果这不能回答您的问题,请澄清,因为通常不接受将您的问题限制为说“我尝试使用 PdfStamper 但结果 pdf 不是模板”,您至少应该展示您尝试过的内容,否则你冒着你的问题将被关闭的风险。

于 2013-09-11T10:49:12.553 回答