使用Laravel的,我现在用https://github.com/clegginabox/pdf-merger合并的PDF文件,冲进下面的错误尝试两个PDF文件合并到一起,其中一个是在1.4版本时,一个Web应用程序使用的ghostscript:在PHP脚本
Exception in pdf_parser.php line 133:
This document (C:\path-to-doc\file.pdf) probably uses a compression technique
which is not supported by the free parser shipped with FPDI.
(See https://www.setasign.com/fpdi-pdf-parser for more details)
in pdf_parser.php line 133
我在下面的答案中遵循了这个建议,使用ghostscript将1.4以上的任何pdf转换为1.4,这样合并就可以工作。
我已经成功地安装的ghostscript并将其添加到我的道路。为了测试我有一个样本pdf文件是1.5版叫做test.pdf
,我从窗户终端中运行以下命令:
gswin64 -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dNOPAUSE -dQUIET -dBATCH -sOutputFile=new-file.pdf test-file.pdf
,我得到我的new-file.pdf
就好了1.4版本。
现在我有以下的PHP脚本,当从网页浏览器运行,只是不断加载。如果我让它运行一下,有时会创建一个新文件,但它的大小和空白都是3kb,并且原始pdf文件有时也会变空白。
<?php
shell_exec("gswin64 -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dNOPAUSE -dQUIET -dBATCH -sOutputFile=new-file.pdf test-file.pdf");
echo 'done';
任何想法我做错了什么?
你是什么意思“添加到我的路径”?提前致谢。 – Marsha
@Marsha看到我的回答 - 我用相关信息更新了它,让我知道它是否没有意义。 – haakym
@Marsha如果你想在我的问题中使用这个软件包或者试图合并PDF文件,请告诉我,因为我现在已经有了更多的经验,并且可能会提供一些提示。 – haakym