从 PDF 制作后记文件并打印
Making a postscript file out of a PDF and print it
我想知道如何获取包含多个页面的现有 PDF,并且我需要多次打印每一页。
例如我有一个 3 页的 PDF。我需要输出为 111 222 333 而不仅仅是 3 个副本 (123 123 123)。
处理这样的事情的方法到底是什么?我从哪里开始?
谢谢。
您可以通过多种方式执行此操作。我建议使用 Ghostscript 的 ps2write 设备,这会从 PDF 文件创建一个 2 级 PostScript 程序,最近的版本允许您在文档或页面级别注入特定的 PostScript。
如果您在文档级别插入 <</NumCopies 3>> setpagedevice
,则符合标准的 2 级打印机应为每一页打印多份副本。
使问题复杂化的是分页设备参数。如果设备可以处理整理,则此参数确定是否将多页副本作为 123、123、123 或 111、222、333 传送。
最简单的解决方案是将其设置为 false,这样,如果它尊重整理,那么您将获得 111、222、333。如果设备不尊重整理,那么您仍然会得到该顺序。
因此,对于最新版本的 Ghostscript,我相信:
./gs -sDEVICE=ps2write -sOutputFile=out.ps -sPSDocOptions="<</NumCopies 3 /Collate false>> setpagedevice" <input.pdf>
将生成一个 PostScript 程序,它将执行您想要的操作。
例如,您也可以使用 ps2write 设备每页创建一个输出文件:
./gs -sDEVICE=ps2write -sOutputFile=out%d.ps
然后您可以将每个输出页面复制所需的次数并将它们按正确的顺序分类。
我想知道如何获取包含多个页面的现有 PDF,并且我需要多次打印每一页。
例如我有一个 3 页的 PDF。我需要输出为 111 222 333 而不仅仅是 3 个副本 (123 123 123)。
处理这样的事情的方法到底是什么?我从哪里开始?
谢谢。
您可以通过多种方式执行此操作。我建议使用 Ghostscript 的 ps2write 设备,这会从 PDF 文件创建一个 2 级 PostScript 程序,最近的版本允许您在文档或页面级别注入特定的 PostScript。
如果您在文档级别插入 <</NumCopies 3>> setpagedevice
,则符合标准的 2 级打印机应为每一页打印多份副本。
使问题复杂化的是分页设备参数。如果设备可以处理整理,则此参数确定是否将多页副本作为 123、123、123 或 111、222、333 传送。
最简单的解决方案是将其设置为 false,这样,如果它尊重整理,那么您将获得 111、222、333。如果设备不尊重整理,那么您仍然会得到该顺序。
因此,对于最新版本的 Ghostscript,我相信:
./gs -sDEVICE=ps2write -sOutputFile=out.ps -sPSDocOptions="<</NumCopies 3 /Collate false>> setpagedevice" <input.pdf>
将生成一个 PostScript 程序,它将执行您想要的操作。
例如,您也可以使用 ps2write 设备每页创建一个输出文件:
./gs -sDEVICE=ps2write -sOutputFile=out%d.ps
然后您可以将每个输出页面复制所需的次数并将它们按正确的顺序分类。