【问题标题】:Join multiple PDF files into a single page PDF - positioned join using PHP [closed]将多个 PDF 文件加入单个页面 PDF - 使用 PHP 定位连接 [关闭]
【发布时间】:2012-01-25 06:02:12
【问题描述】:

这不是尝试将单独的 PDF 连接到具有多个页面的单个 PDF。它试图从已经存在的少数其他 PDF 创建单页 PDF。我需要使用 PHP 来执行此操作,服务器是 CentOS。

我已经在生成一组基于单个模板的单页 PDF 文件(使用 FPDF)。要求是允许用户混合和匹配现有的 PDF 文件并将它们放置在一起以创建单个 PDF。

我目前的尝试是将 PDF 转换为图像(使用 ghostscript)并使用输出 jpeg 使用 FPDF 创建最终的 PDF。虽然这是可能的,但 PDF 的质量在转换过程中会受到一点影响。

我想知道我们是否可以使用更好的解决方案?

更新

解决方案不一定是 PHP。它很可能不会。我当然愿意使用任何可以完成这项工作的命令行工具。示例命令如下:

$ newtool -o outfile.pdf -s WidthXHeight -i in1.pdf in2.pdf in2.pdf -g p1Xp2 p3Xp4 p5Xp6

以上只是一个例子——不是一个真正的命令——我只是希望一个工具是否具有这种功能。指定一组输入文件及其在输出文件中的位置。

【问题讨论】:

    标签: php pdf imagemagick ghostscript pdftk


    【解决方案1】:

    我过去曾结合使用 Ghostscript(将现有 PDF 页面放置在较大的空 PDF 页面上)和 pdftk(将两个相同大小的 PDF 页面叠加/合并为一个新页面)来完成此操作。

    查看这些答案 (@Superuser.com) 以了解其工作原理:

    我的程序使用命令行和/或脚本。但是,这也可以扩展为使用 Ghostscript .dll/.so 从 PHP 以编程方式完成

    【讨论】:

    • 感谢您的回答。我很高兴使用命令行工具来获得结果。虽然参考资料很有用(我之前看过第二个参考资料),但是否有一个关于如何将现有 PDF 放置在更大的空 PDF 上的特定示例?顺便说一句,您对第一点的回答非常棒:-)
    • 抱歉 - 暂时忽略我的评论。我会尝试 pdftk 加入,然后回复你。
    • 我玩弄了 ghostscript,但我只能看到一种将 1 个 PDF 文件放置在新创建的更大文件上的方法。我看不到如何将多个文件定位到多个位置。有什么建议吗?
    • 您一次只能在新创建的较大文件上放置 1 页(或文件)。您不能将多个文件定位到多个位置。这就是为什么您需要使用 pdftk 将新创建的不同内容相互叠加。 (也许您可以通过在一个命令中使用“stamp”和“background”操作一次执行 3 个操作...)
    • ...带有您的解决方案的命令行 sn-p 将不胜感激!
    猜你喜欢
    • 2013-09-24
    • 1970-01-01
    • 1970-01-01
    • 2015-07-05
    • 2023-03-24
    • 2016-02-28
    • 1970-01-01
    • 2021-06-21
    • 2017-10-21
    相关资源
    最近更新 更多