2013-06-21 35 views
0

我有一個帶有表單字段(amount_1,amount_2等)的pdf模板文件我創建了一個XFDF文件,並通過命令行使用PDFtk填充表單並壓扁文件。PDFtk和XFDF文件沒有填寫表格

然而,當我運行下面的命令,創建新的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> 
+0

你有什麼類型的PDF表格?你確定它是一個Acroform嗎?或者它是一個XFA表單? –

+0

我使用Adobe Livecycle創建了表單。當我查看pdf表單的來源時,我看到了很多對XFA的引用,例如( fredmarks

+0

然後我相信你不能用PDFtk填充XFA表單。或者查看http://www.pdflabs.com/docs/pdftk-man-page/並查找[drop_xfa]。但是,如果這些字段是XFA字段,那麼您需要一個不同的工具 –

回答

1

我知道這是一個雖然有人正在研究此問題,但下面是我解決此問題的方式:

首先,如果您不介意從文件中移除XFA格式,從而創建一個新的pdf「模板」做你的表格填寫,然後簡單地說,刪除多餘的XML數據使用以下命令行:

「PDFTK XFA-PDF-form.pdf輸出ACRO-PDF-form.pdf drop_xfa」

如果這仍然給您帶來麻煩,重新開始使用原始XFA文件,並在LiveCylce中將該文件保存爲Adobe Static PDF表單。或者使用Acrobat X Pro我認爲你也可以這樣做。然後通過調用命令行drop_xfa重複上述步驟。

此時您應該有一個常規Acroform。

從這裏您將能夠將輸出文件的數據保存爲XFDF或FDF。然後,它照常營業。

感謝@enriquein,他指出我正確的方向。

+0

我想在php或python中獲取來自form pdf的xfa數據。請參考我的一些解決方案。謝謝 – Lakhan