Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Linux中将pdf打印为pdf的Bash脚本_Linux_Pdf_Ubuntu_Printing - Fatal编程技术网

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

在Linux中将pdf打印为pdf的Bash脚本,linux,pdf,ubuntu,printing,Linux,Pdf,Ubuntu,Printing,这个问题听起来可能有点奇怪,但我发誓,实际任务相对简单 我正在从网络表单自动生成一些PDF,使用PDFCreator将生成的FDF合并到预先存在的PDF中。我在PDF中创建了先前存在的PDF。这个设置非常好——几乎可以。问题是,当您在AdobeReader9(最常见的阅读器)中查看生成的PDF时,字段的子集只是空白。信息仍然存在;使用以前版本的Adobe Reader或其他阅读器(如Foxit Reader)显示整个PDF。不知道发生了什么,Adobe技术支持也没用,因为我没有用Adobe软件创

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

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

但是,如果我使用PDF打印机驱动程序将生成的PDF打印成新的PDF,它在任何地方都能正常工作。这对于我们的销售部门来说既耗时又烦人,所以我想在创建第一个PDF时自动执行这一步骤


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

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

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

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

Awesome,效果非常好。刚刚验证过,我生成的pdf中没有显示Reader 9.1的所有字段在我通过您的命令传递后都会显示在文件中。谢谢