我需要使用现有的PDF(使用Prawn创建),并将第1页(封面)后的对组合成单页。我还想在连接页面的中心添加一条垂直线。这些页面将以书籍形式打印,目标是制作与Acrobat中的并排视图类似的单个PDF页面。我知道我可以将它们转换为图像,使用ImageMagick执行我需要的操作,然后将它们放回PDF格式,但我正在尝试最小化转换次数,以便尽可能节省质量。
我也意识到我可以从一开始就使用Prawn,但我试图避免这种情况,因为它需要对我们的应用程序进行非常大的更改。
答案 0 :(得分:1)
可以使用Ghostscript和pdfwrite设备执行此操作,但这绝不是简单的。您需要编写一些PostScript来完成这项工作。
您需要添加BeginPage和EndPage过程,BeginPage需要检查当前页码(您需要自己跟踪)。如果是第1页,则正常处理。如果是偶数页面,则丢弃当前的PageSize并将其替换为覆盖一对页面的页面。处理偶数页面。不要传播内容。
如果页面是奇数(而不是1),则翻译原点,使其向右偏移页面的宽度。处理奇数页。使用moveto,lineto和stroke在两个页面之间绘制所需的行。传送页面。
这假定所有页面的大小和方向相同,或者至少预先知道每个页面的大小。也可以以编程方式检索它们,但更复杂。
它绝对不是一件容易的事,但是如果你在PostScript标签中翻找我的答案并找到任何带有“拼版”字样的东西,你可能会找到完成这项工作的程序大纲。
我快速查看了here这是我写回来的答案。它采用了与上述不同的方法,它复制了PDF解释器的一些内容并重新定位它们。它确实占了你想要的一大块。