FPDF错误:解压缩流时出错


FPDF Error: Error while decompressing stream

我构建了一个包含fpdf库的web应用程序,该应用程序允许客户端上传pdf文件,然后我的系统将其合并为月度报告(添加封面、内容页等)。

上个月我收到了这个错误:

FPDF错误:解压缩流时出错

我在谷歌上搜索过,以前遇到它的人似乎只有德国人!

错误处理程序位于fpdi_pdf_parser.php的第241行,它引用了"case'/FlateDecode':"和其他我不理解的内容。

我将问题追溯到一个看似正常但始终导致问题的pdf文件。我从旧的pdf文件中抓取屏幕,创建了一个新版本的pdf文件,当我上传时,一切都正常。

正如我所说,我绕过了这个问题,但并不真正理解如何解决,也不想再次遇到同样的事情。

你知道发生了什么事吗?

提前谢谢。

PDF文件可以用不同的算法以不同的方式压缩,如果您的应用程序打开以接收任何文件,则可能是您得到了FPDF无法解压缩的损坏文件。即使在这种情况下(我指的是损坏的文件),其他PDF解析器/阅读器也可以恢复文件并显示内容(或部分内容),但这并不意味着文件是有效的。

该文件也可能包含FPDF不支持的PDF规范中的某些特定功能。如果你可以选择发布有问题的文件,那么可能会进一步缩小问题范围。

通常在这种情况下帮助通过PHP安装或更新zlib模块。这个问题也是由于图片被插入到pdf文档中而产生的(请参阅上的图片要求http://www.fpdf.org/en/doc/image.htm)。