连接PDF并在Acrobat Reader中保留扩展功能

Tom*_*ard 8 pdf acrobat itext

我们使用iText自动填写许多文档中的表单字段,然后将这些文档连接成一个结果PDF.

Adobe已在Acrobat Reader选项中引入了扩展功能,以允许Acrobat Reader用户通过更改表单字段来保存PDF.

这是Adobe专有的功能,iText只能解决这个问题.

我已经能够在追加模式下使用PdfStamper类执行一个特定文档的工作.由于PDF包含表单字段,因此我们使用PdfCopyFields类来执行连接.PdfCopyFields没有追加模式.

有没有其他方法可以使用iText(任何版本)将PDF附加到预先存在的PDF中?

Mar*_*rer 5

这是可能的,但需要你足够了解修改PdfCopyFields,以便它保存在追加模式.

您可以复制功能并在PdfStamper(在您自己的类或其他方面),子类PdfCopyFields或直接修改PdfCopyFields之上使用它.

Big Stumbling Block PDF中具有相同名称的所有字段也共享相同的值.如果在生成的PDF中有两个相同表单的副本,则您有两个相同数据的视图.

即使有不同的形式,如果你碰巧有一个名字冲突(这里的"城市"可能是当前地址的一部分,而在那里它可能是他们出生的城市),他们会把同样的价值联系在一起.

如果你有一个综合系统,所有你的命名冲突将是故意的,那很好,去破产.如果"FirstName"总是指同一个人,并且更改它应该改变所有相关形式的值,那么你就是金色的.如果不是......那就是为什么PdfStamper的扁平化能力如此受欢迎.

替代方案变为"在将表格粘合在一起之前重命名所有字段"以避免此类冲突.

即使使用综合系统,我仍然建议使用一个小工具来完成你建议合并并寻找碰撞的表格.也许可以在一些测试数据中列出它们的值.您可能会听到"Fly:House,Common"与"Fly:Southwest Airlines"的相似之处.

可能不是那个特别的例子,但谁知道呢?;)