【问题标题】:Gluing (Imposition) PDF documents粘合(拼版)PDF 文档
【发布时间】:2010-10-02 16:34:50
【问题描述】:

我有几个 A4 PDF 文档,我想将它们(二合一)“粘合”成 A3 格式的 PDF 文档。因此,我将从 2PDF A4 中获得单面 PDF A3。 我找到了出色的实用程序PDFToolkit 和其他一些实用程序,但它们都不能用来将两个文档并排“粘合”。

【问题讨论】:

    标签: pdf automation imposition


    【解决方案1】:

    我刚刚在 superuser.com 上发现了一个名为 PDFjam 的好工具,它可以在一个命令中完成上述所有操作:

    pdfjam --nup 2x1 file1.pdf file2.pdf --outfile DONESKI.pdf
    

    它具有其他标准功能,例如页面大小以及用于更复杂的页面排序的良好语法(真正的小册子样式页面拼版所必需的棘手的页面重新排序)。

    它建立在 TeX 之上,不管它是什么。在 Ubuntu 上安装轻而易举:您只需 apt-get install pdfjam。在 Mac OS 上,我建议使用 BasicTeX(谷歌“mactex basictex”;所以认为我是垃圾邮件发送者,不让我发布链接)。

    这比同时安装 pdftk Multivalent(在 Mac OS for dev Ubuntu for deploy 上)更容易和更易于维护,但事实并非如此反正对我来说很好......!

    【讨论】:

    • pdfjam / pdfnup 有时会很棘手。如果它报告调用 pdflatex 失败并且源 pdf 包含横向页面,请在调用 pdfjam 之前尝试将它们旋转为纵向(例如通过使用 pdftk)。
    • 为了从两个 420mm x 420mm PDF 中获得任意输出纸张尺寸(水平 A0 条),除了 --nup 2x1 之外,我还必须提供 --papersize '{420mm,841mm}' --trim '0mm 0mm -0.5mm 0mmpdfnup
    【解决方案2】:

    找到了名为Impose 的用于拼版的following(免费和开源)工具(感谢danio 的提示)。这完美地解决了我的问题。

    编辑: 这是如何完成的:

    使用 PDF Toolkit 将两个 PDF 文件合并为一个(两个 A4)

    pdftk File1.pdf File2.pdf cat output OutputFile.pdf
    

    由此创建一个单页(一个 A3):

    java -cp Multivalent.jar tool.pdf.Impose -dim 2x1 -verbose -paper-size "42.2x29.9cm" -layout "1,2" OutputFile.pdf
    

    【讨论】:

    【解决方案3】:

    我想宣传我的pdftools

    它是用 Python 编写的,因此可以在任何平台上运行。它是 Latex 的包装器(pdfpages 包),但可以用一个命令行做很多事情:合并 pdf 文件,nup 它们(每个输出页面有多个输入页面)并为输出文件的页面编号(您指定位置和数字的格式) 它仍然需要一些工作,但我认为它现在可以使用非常稳定:)

    【讨论】:

    • 我觉得这个对我来说是最有用的。我不想在互联网上搜索旧版本(Multivalent),也不想编译一些东西(podofo),也不想摆弄 ps。 Pdfjam 对我不起作用,因为它不支持 5x2 网格之类的东西。谢谢!
    【解决方案4】:

    这会将两个横向字母页面放在一个纵向字母表上,沿顶部“装订”(即折叠)。

    pdftops $1 - | 
    psbook | 
    pstops -w11in -h8.5in '4:1@.65(.5in,0in)+0@.65(.5in,5.5in),2U@.65(8in,5.5in)+3@.65U(8in,11in)' | 
    ps2pdf - $(basename $1 .pdf).psbook.pdf
    

    顺便说一句,我经常这样做,所以我可能会为这个问题提交更多“答案”,以跟踪成功的 pstop 页面规范。让我知道这是否是对 SO 的不当使用。

    【讨论】:

    • 这正是SO在这里的原因......建立一个知识库
    【解决方案5】:

    包括一个漂亮、强大、开源的拼版工具 在 PoDoFo 包中: http://podofo.sourceforge.net/ 这个对我有用。一些征收计划可以在以下位置找到: http://www.av8n.com/computer/prepress/ PoDoFo 可以做很多其他的事情,而不仅仅是强制。

    另一个有用的拼版工具是 Bookbinder(在 量子象站点)。它有一个吸引非专家的 GUI。 它不像 PoDoFo 那样灵活或强大,但它可以做到 强加。

    pdftk 或多或少是必不可少的,但它不会 进行拼版。

    pdfjam 对我来说没用,因为有很多种 它无法处理的有效 pdf 文件。

    我也从来没有能够多价工作。

    【讨论】:

      【解决方案6】:

      你想做的是imposition。有一些商业工具可以拼版 PDF,例如 ARTS crackerjackQuite imposing,但它们非常昂贵(500 美元),需要 acrobat 专业人士的副本,并且对于将 2 个 A4 页面拼版到 A3 纸上来说太过分了。

      【讨论】:

        【解决方案7】:

        在 Postscript 方面,一个名为 pstops 的工具能够以您可以想象的任何方式重新排列 Postscript 文件的页面。我还没有听说过这样的 PDF 工具。但是 pdf2psps2pdf 是存在的。所以一个不太理想的解决方案可能是 pdf2pspstopsps2pdf 的组合。

        【讨论】:

        【解决方案8】:

        我会使用pdftk 将两个 A4 页面合并为一个 2 页 PDF。然后使用PrimoPDF 之类的方式打印为 PDF,并告诉它打印为 A3 格式,每面两页。

        我刚刚测试了从 PowerPoint 打印一些幻灯片。效果很好。我在 PowerPoint 中选择 A3 作为纸张尺寸,然后选择每面打印 2 页。打印到 Primo,瞧,我每张 A3 有两张 A4 幻灯片。

        【讨论】:

        • 我也想过这样的解决方案,将测试质量是否足以用于商业杂志印刷。
        • 此解决方案带来的唯一问题是两张连接的纸张之间有一条黑线。以后有办法去掉吗?
        • 您可以通过使用adobe reader打印来消除线条,在adobe reader打印设置中设置每张2页,在PDF打印机设置中将页面大小设置为A3。
        • 找到了一个更好的解决方案如果你看看我的回答,这是完美的方法。此外,它可以编写脚本和自动化,这是一个额外的好处。
        【解决方案9】:

        您可以使用BookletImposer 将多个输入页面放在一个输出页面上。

        您可以使用PDF Mod更改页面顺序并合并多个pdf文件。

        使用这两个工具,您几乎可以对 pdf 文件进行任何操作(编辑内容除外)。

        【讨论】:

          【解决方案10】:

          我遇到了类似的问题。我尝试了 Impose,但它给了我一个

          Exception in thread "main" java.lang.NoClassDefFoundError: tool/pdf/Impose
          Caused by: java.lang.ClassNotFoundException: tool.pdf.Impose
          (...)
          Could not find the main class: tool.pdf.Impose.  Program will exit.
          

          然后我尝试了PDF Snake,它不是免费或开源的,但有一个完全不受限制的 30 天试用版。在调整参数以达到我想要的效果后,它工作得很好。这是一个很棒的工具。如果不是那么贵,我肯定会买的!无论如何,我想我会留下我的 2 美分,以防有人遇到与 Impose 相同的问题。

          【讨论】:

          • 您得到的错误可能是由于缺少 JAR 或您触发的方式强加。请注意,您必须安装 java 1.6,并且 java.exe 必须在您的路径中。
          • 我确实安装了以下所有内容:Java 6 SE Development Kit 6 (v.1.6.0.100)、Java 6 (v. 6.0.130),甚至 Java DB (v.10.4.1.3 )。即使 java.exe 不在我的 Path 系统变量中,如果我在控制台上键入“java”,我会得到命令的使用说明,而不是“找不到命令”错误。
          • 最新版本不包含工具包;这就是为什么你会得到一个找不到类的错误。
          【解决方案11】:

          看看这个

          http://sourceforge.net/projects/proposition/

          它需要 laTex 才能运行, 但是当它这样做时,效果真的很好

          问候

          【讨论】:

          • 据我所知,这也只是乳胶的包装,这次是用 ruby​​ 编写的。 FWIW,它对我不起作用,而 pdfjam 起作用。 YMMV。
          猜你喜欢
          • 2019-01-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-09-10
          相关资源
          最近更新 更多