【问题标题】:Merging two PDF using PHP (for version > 1.4)使用 PHP 合并两个 PDF(版本 > 1.4)
【发布时间】:2014-08-06 17:43:12
【问题描述】:

我有一个将两个 pdf 合并为一个 pdf 的问题。我正在使用 FPDF + FPDI,也尝试过 TCPDF + FPDI,但是当我使用 pdf 版本 > 1.4 时出现问题 php 错误是:FPDF 错误:本文档 (pdf_dump/1407303457.pdf) 可能使用了一种压缩技术,即FPDI 附带的免费解析器不支持。

我不想使用 fpdi 的商业插件。是否有任何解决方法可用于使用 pdf > 1.4 版本。

注意:我正在使用 codeigniter

谢谢。

【问题讨论】:

    标签: php codeigniter pdf


    【解决方案1】:

    看看this question

    您需要将 PDF 保存为早期版本,PDF 1.4 或更低版本,然后它应该可以与 FPDF 一起使用。


    你可以试试TCPDI Parser,它是FPDI的修改版,应该支持PDF版本> 1.4

    【讨论】:

    • 我看到了,但我正在开发网站,其他人会使用它。我无法要求其他用户将 PDF 保存到早期版本并上传。希望你能理解我的情况!!
    • 我将尝试 TCPDI Parser 并让我看看它是否适用于版本 > 1.4
    • 它不工作。它在使用时出错。致命错误:第 474 行 C:\wamp\www\pdftest\tcpdf\include\tcpdf_filters.php 中的消息 'TCPDF_PARSER ERROR: decodeFilterFlateDecode: invalid code' 的未捕获异常 'Exception' 异常:TCPDF_PARSER 错误:decodeFilterFlateDecode:C 中的无效代码:\wamp\www\pdftest\tcpdf\include\tcpdf_filters.php 在第 474 行
    • 第 474 行是什么?尝试创建一个非常简单的代码示例,看看是否可行。
    • 我研究并发现它是由于密码保护/保护的PDF文件引起的(我之前错过了)。 PDF > 1.4 版本现在正在顺利合并。但是,当文件受密码保护/保护时,出现了一个新问题。 php/codeigniter 中是否有任何方法可以检查 pdf 是否受密码保护?
    【解决方案2】:

    对于 symfony,我使用这个库将 pdf>1.4 转换为 pdf1.4:

    https://packagist.org/packages/xthiago/pdf-version-converter

    【讨论】:

    • 我是xthiago/pdf-version-converter 的作者。该库可以在任何 PHP 项目中使用 - 它不需要使用 Symfony 框架(全栈)。该库在内部使用 Symfony 的两个组件(进程和文件系统),但 composer 负责它。我建议您使用该库,因为它具有单元测试 (PHPUnit) 并且是开源的 - 您可以受益于社区提供的错误修复和增强功能。
    猜你喜欢
    • 2012-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-22
    • 1970-01-01
    • 2021-06-17
    • 2021-12-28
    • 1970-01-01
    相关资源
    最近更新 更多