从 PDF 表单中删除 XFA 格式是否会出现任何问题?我正在使用 PDFTK 来填写表单,发现如果表单是 XFA,则 PDFTK 不起作用,除非我先执行 drop_xfa 命令来创建新的模板表单。我注意到的一件事是,如果我不执行 drop_xfa,我可以在 Acrobat Reader 上看到预填充的字段,但在 Acrobat Pro 上看不到。其他视图(例如 Ubuntu 文档查看器)也可以。我不介意执行 drop_xfa,但只是检查我对我不知道的表单执行此操作是否可能存在问题。
示例:如果表单已填写,并且要在系统上读取该表单以获取要处理的字段/值。
先感谢您。
PDF 中有三种类型的表单:
- 使用 AcroForm 技术的表单。在这种情况下,每个字段对应于特定页面上具有固定位置的一个或多个小部件。该表单仅使用 PDF 语法进行描述。
- 使用 XML 表单架构 (XFA) 的动态表单。在这种情况下,PDF 文件只不过是描述整个表单的 XML 文件的容器。我们将此称为dynamicXFA,因为表单可以根据添加的数据进行扩展或缩小:通过添加更多数据,1 页表单可以变成 100 页表单。
- 结合了 AcroForm 和 XFA 技术的混合形式。在本例中,表单被描述两次:一次使用 PDF 对象;一次使用 PDF 对象。一旦使用XML。显然,这样的表单不是动态的:AcroForm 部分仍然定义在特定页面上的绝对位置定义的小部件注释。表单无法适应其数据。
如果你有一个动态XFA表格,删除 XML 将删除完整的表单。不会有任何东西留下来。
然而,您似乎面临着由 AcroForm 和 XFA 语法组成的混合形式。混合形式是一种痛苦,因为它们经常导致混乱。例如:不支持 XFA 的查看器将向您显示存储在 AcroForm 中的数据。支持 XFA 的查看者可以优先选择 XFA 表单中存储的数据。你可能会问,有什么问题吗?这两种形式不是等价的吗?
理想情况下,表格的两个版本确实是等效的,但是:
- 如果表单填写不正确,AcroForm 可能与 XFA 表单不同。
- XFA 具有比 AcroForm 技术更多的功能。例如:XFA 表单中的文本字段可以是有道理的(如同
<p align="justify">
在 HTML 中)。但是,AcroForm 文本字段中不存在此选项(只能左对齐、居中对齐或右对齐)。因此,如果您有 XFA 表单中对齐的文本,但您只查看 AcroForm,则该文本将不会对齐(因为 AcroForm 文本字段中不存在对齐的文本)。
这是一个很长的答案,旨在解释,如果您有混合形式,那么它是在多数情况下可以扔掉 XFA 部分。您可能会有细微的差异,但如果您对 Ubuntu 文档查看器(不支持 XFA 的查看器)中的表单外观感到满意,那么您应该没问题。
免责声明:我是 iText 集团的首席执行官。 Pdftk 是基于已过时且不再受支持的 iText 版本的第三方工具。 iText Group 不认可使用 Pdftk。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)