PDFtk和XFDF文件未填写表格

时间:2013-06-21 01:42:42

标签: pdf pdftk xfdf

我有一个包含表单字段(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>

1 个答案:

答案 0 :(得分:1)

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

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

“pdftk xfa-pdf-form.pdf output acro-pdf-form.pdf drop_xfa”

如果这仍然给您带来麻烦,请从原始XFA文件开始,在LiveCylce中将该文件另存为Adobe Static PDF表单。或者使用Acrobat X Pro我认为你也可以这样做。然后通过调用命令行drop_xfa重复上面的步骤。

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

从这里,您可以将输出文件的数据保存为XFDF或FDF。然后就像往常一样。

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