Bash脚本在Linux中将pdf打印为pdf

时间:2009-11-19 15:28:29

标签: linux pdf ubuntu printing

问题可能听起来有些奇怪,但实际任务相对简单,我发誓!

我会自动从webform生成一些PDF,使用PDFCreator将生成的FDF合并到预先存在的PDF中。我在NitroPDF中创建了预先存在的PDF。此设置几乎可以很好。问题是,当您在Adobe Reader 9(最常见的阅读器)中查看生成的PDF时,这些字段的子集只是空白。信息仍在那里;使用以前版本的Adobe Reader或Foxit Reader等其他阅读器显示整个PDF。不知道发生了什么,因为我没有用Adobe软件创建PDF,所以Adobe技术支持毫无用处。 (如果您想帮助解决此问题而不是以下问题,请随时给我发电子邮件。)

但是,如果我使用PDF打印机驱动程序获取生成的PDF并将其打印到新的PDF,它在任何地方都可以使用。这对我们的销售部门来说是非常耗时且烦人的,因此我想在创建第一个PDF时自动执行此步骤。

我在ubuntu中,并且具有对服务器的命令行root访问权限。该程序是用PHP编写的,可以轻松地进行系统调用。我只是在弄清楚如何正确地将事物组合在一起,以便我可以使用特定的打印机驱动程序自动将已知文件打印到另一个已知文件。

1 个答案:

答案 0 :(得分:4)

您可以尝试通过Ghostscript放置PDF文件。我发现这足以修复许多有问题的PDF。

gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=output.pdf input.pdf

(同样的命令也可用于将多个PDF文件合并为一个,只需指定多个输入文件。)