3

我有一个带有表单字段(amount_1、amount_2 等)的 pdf 模板文件,我创建了一个 XFDF 文件,并通过命令行使用 PDFtk 来填写表单并展平文件。

但是,当我运行下面的命令时,会创建新的 pdf,但未填写字段。

/usr/bin/pdftk /home/admin/tickets/tickets.pdf fill_form /home/admin/tickets/files/1371711546.xfdf output 1371711546.pdf flatten 

XFDF 看起来像这样

<?xml version="1.0" encoding="UTF-8"?>
<xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve">
<fields>
<field name="amount_1">
<value>$17.00</value>
</field>
<field name="amount_2">
<value>$17.00</value>
</field>
<field name="amount_3">
<value>$17.00</value>
</field>
<field name="amount_4">
<value>$17.00</value>
</field>
</fields>
<ids original="095b7b1e54742b95f30a987149d65453" modified="1371711546" />
<f href="http://test.selebtom.co.zw/tickets/tickets.pdf" />
</xfdf>
4

1 回答 1

2

我知道已经有一段时间了,但以防万一有人正在研究这个,这是我解决这个问题的方法:

首先,如果您不介意从文件中删除 XFA 格式,从而创建一个新的 pdf“模板”来填充您的表单,那么只需使用以下命令行删除额外的 XML 数据:

“pdftk xfa-pdf-form.pdf 输出 acro-pdf-form.pdf drop_xfa”

如果这仍然给您带来麻烦,请从原始 XFA 文件重新开始,并在 LiveCylce 中将文件保存为 Adob​​e 静态 PDF 表单。或者使用 Acrobat X Pro 我想你也可以做到这一点。然后重复上述步骤,通过调用命令行到 drop_xfa。

此时您应该有一个常规的 Acroform。

从这里您将能够将输出文件的数据保存为 XFDF 或 FDF。然后一切照旧。

感谢@enriquein,他为我指明了正确的方向。

于 2015-02-20T17:40:36.140 回答