【问题标题】:Combine two TCPDF documents合并两个 TCPDF 文档
【发布时间】:2015-12-09 19:10:13
【问题描述】:

我正在使用 TCPDF 在我网站的不同部分创建两个单独的报告。我希望,在第一个报告的末尾,应该加载第二个报告。

这与导入 PDF 文件不同,因为第二份报告也是由 TCPDF 生成的。有没有办法做到这一点?

【问题讨论】:

    标签: merge concatenation tcpdf


    【解决方案1】:

    根据您的问题,我假设您最终想要提供的是一个 PDF 文件,该文件由第一个 PDF 与第二个 PDF 连接而成。

    一个快速而肮脏的解决方案是利用pdftk 命令行PDF 处理器,并使用exec() 函数从您的PHP 代码中调用它。 pdftk 命令具有许多功能,连接文件只是其中之一,但它的工作非常出色。根据您的托管情况,这可能适合您,也可能不适合您。

    另一种选择是使用FPDI 导入两个 PDF 文件并将它们连接到您的 PHP 代码中,然后将连接的版本发送给用户。

    在此处使用PFDI 的更多信息:

    Merge existing PDF with dynamically generated PDF using TCPDF

    鉴于您已经在使用 TCPDF,导入您想要与刚刚创建的文件连接的预先存在的文件应该不会太困难。

    【讨论】:

    • 这两个PDF文件是TCPDF动态生成的,我想要的是一种合并方式
    • FPDI 是 TCPDF 的扩展,它提供了导入现有 PDF 文件并将这些页面添加到您正在使用 TCPDF 构建的 PDF 文件的能力。第一个 PDF 是由 TCPDF 还是由其他方法创建的并不重要。关键是,除非我遗漏了什么,否则 FPDI 将解决您的问题。您是否阅读了我在解决方案中链接到的答案?如果这不能解决您的问题,您能解释一下原因吗?
    • FDPI 有一个方法setSourceFile('document.pdf'),可用于导入现有的 PDF 文件。如果FIRST文件是由TCPDF生成的没问题,问题是SECOND文件也是由TCPDF生成的,我需要setSourceFile('generatedPdf.php')之类的东西,FPDI的文档中没有这样的东西
    【解决方案2】:

    只需将 FPDI 添加到您的项目/作曲家中:

    https://www.setasign.com/products/fpdi/downloads/

    你还能用tcpdf吗? FPDI 支持 tcpdf 的所有方法,只需使用 new FPDI() 代替 new tcpdf() 结果将在您的报告中相同,在您创建报告后使用此页面中的代码标记文件:

    https://www.setasign.com/products/fpdi/about/

    在一个循环中,一旦设置了第一个文件,然后设置了第二个文件...... 如果您需要帮助,我在这里为您服务。

    【讨论】:

    • 请注意:PDF 版本 > 1.5 仅支持商业插件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-10
    • 1970-01-01
    相关资源
    最近更新 更多