在JAVA中填写PDF表格表格

时间:2015-12-06 04:43:41

标签: java forms pdf itext

我有这个type of form,我想从列表中填写。我已经尝试获取所有Acro字段,但这些字段与单元格无关,我需要通过遍历列表来识别其单元格以填充相关值。对于第一个表中的示例,我有一个段A的列表。请告诉我如何使用Itext填充预先创建的表单。

1 个答案:

答案 0 :(得分:1)

请允许我将这个非常广泛的问题分成两个不同的问题。

<强> 1。你有一个互动形式。如何检索字段名称/类型?

这可以在不同的地方解释。

Chapter 6 of "iText in Action - Second Edition"中对此进行了解释。请参阅标题为“检查表单及其字段”下的第181-183页,其中您将找到对FormInformation示例的引用。

在用Inspect fields标记的在线文档中对此进行了解释,例如在问题How to get specific types from AcroFields? Like PushButtonField, RadioCheckField, etc的答案中,这实际上是对StackOverflow问题的回答:iTextSharp. How to get specific types from AcroFields? Like PushButtonField, RadioCheckField, etc(我删除了那个答案,因为提问的人在评论中非常粗鲁。)

如果您想知道哪些字段是在没有编写代码的表单中定义的,您可以使用iText RUPS。在下面的屏幕截图中,我在RUPS中打开了您的PDF:

enter image description here

我看到"Klantnaam"(客户名称),"Aantal1"(金额1),"Segment1"(第1段),"Leaseprijs1"(租赁价格1)等字段,... (Hé,ben jij ook Nederlandstalig?)

<强> 2。一旦掌握了字段名称,如何填写表格?

Chapter 6 of "iText in Action - Second Edition"中也解释了这一点。请参阅标题为“填写表单”的p183-186,您可以在其中找到对FillDataSheet示例的引用。

您可以在Q&A section about interactive formsexample section about forms或标记为“Fill form”的内容下在线查找其他示例。例如,请参阅问题How to fill out a pdf file programmatically? (AcroForm technology)的答案。

请求反馈:

我们非常自豪我们提供高质量的文档。 网站上的大多数Q&amp; As都是我们之前在StackOverflow上发布的问题提供的答案,但为了方便起见,我们对其进行了重新排列,编辑和分类。例如,见:

我们很遗憾,我们提供的信息对您来说还不够,我们希望您能给我们反馈,以便我们进一步改进文档。