PDF文件上的XFA表格

时间:2016-03-07 12:18:46

标签: pdf xfa

我需要填写几个包含XFA文件的PDF表单,然后打印它们。我只能从Linux机器上打印它们。它已经安装了Acroread,但是它已经过时了,它不能正常工作。

我能做的就是在我的Macbook中填写它们。所以我的问题是:一旦我填写它们,我可以以某种方式将它们导出到"常规" Linux中的查看器(如Okular,Evince等)可以打开和打印的pdf文件?那将是很棒的,因为我只是通过电子邮件发送给自己并从Linux计算机上打印出来。

谢谢!

2 个答案:

答案 0 :(得分:2)

你描述的问题是一个标题为“谁害怕XFA?”的主题。 video / slide deck

如果您只有有限数量的文档可以半自动处理,Max Wyss发布的解决方案(使用Acrobat Reader DC填写并打印表格)当然是可行的。如果您想要一个完全自动化的流程,这通常不是一个可行的解决方案。例如,如果表单需要在Web应用程序的上下文中填写,并且人们需要在浏览器中获取PDF作为对Linux服务器请求的响应,那么您将不会将Macbook用作服务器,你呢?

在这种情况下,您需要一个将XML注入PDF的库(请参阅How to fill out a pdf file programmatically?),然后将其“展平”为普通PDF(How to flatten a XFA PDF Form using iTextSharp?)。这种方法的问题是你需要一个软件库或工具来实现这一点,除了Adobe LiveCycle和iText的XFA Worker之外,我不知道任何可以将XFA压平为普通PDF的工具。

使用PostScript驱动程序打印动态XFA表单是行不通的,因为除了Adobe和iText软件之外,软件世界中对XFA的支持很少(并且在PDF 2.0中不推荐使用XFA)。

答案 1 :(得分:0)

Macbook和Linux机器可以联网吗?如果是这样,请尝试共享打印机,并使用Macbook(或Adobe Reader XI)上的Acrobat Reader DC填写并打印表单。

另一种可能性是设置PostScript打印机(驱动程序)并使用其帮助创建PostScript文件,然后您可以将其传输到Linux计算机并发送到打印机(可能使用Ghostscript作为中介)。

关键是你需要Acrobat / Reader来填写表格,特别是如果它是动态XFA。