通过命令行将 PDF 转换为每页多页的 PDF

use*_*207 12 pdf printing command-line evince ubuntu

假设我想slides.pdf每页包含 4 张幻灯片。

我可以slides.pdf在evince(默认的Ubuntu文档查看器)下打开一个文档

evince slides.pdf--> 打印--> 页面设置--> 每面页数 --> 4(或其他一些数字)

然后,我可以表明我想打印到一个文件,然后打印。结果是一个output.pdf文件,每张纸包含所需数量的幻灯片。

我想通过命令行实现相同的功能(因为我需要将其合并到脚本中)。我所发现的一切都是依赖外部工具的解决方案。例如,我尝试安装pdfjam(这需要我安装 88.1 MB 的软件包texlive-latex-base才能实现我已经拥有的功能!),结果只是失败pdfjam ERROR: LaTeX package pdfpages.sty is not installed

我宁愿避免使用外部包。

我如何通过命令行实现这一点?

小智 20

您还可以使用 pdfnup:

pdfnup --nup 2x2 --no-landscape file.pdf
Run Code Online (Sandbox Code Playgroud)

其中 2x2 是指 2 行 x 2 列(或相反——我不确定)。有关更多选项,请参阅 man pdfnup。

  • `pdfnup` 工作正常。给想要在一页上放置四次相同一页 PDF 的人的注意事项:您需要将输入的 pdf 文件列出四次:`pdfnup --no-landscape --a4paper --nup 2x2 input.pdf input.pdf input.pdf input.pdf` (3认同)
  • 上述答案+评论的补充: `pdfnup --nup 2x2 --frame true --noautoscale false --delta "0.2cm 0.3cm" --scale 0.90 your.pdf` 将在 pdf 文件的一页上打印 4 张幻灯片使用“your.pdf”的内容作为输入页面,命名为“your-nup.pdf”。 “--frame true”在每张幻灯片周围打印一个框架,“--delta...”指定框架之间的边距,“--scale ...”确保引入纸张边距,以便打印机能够很好地处理作业而不切断内容。所有选项位于http://www2.warwick.ac.uk/fac/sci/statistics/staff/academic-research/firth/software/pdfjam/#using。 (2认同)

Ant*_*nio 6

对我来说pdfnup不可用,虽然pdfxup不起作用, pdfjam但确实:

pdfjam --nup 2x2 <infile>
Run Code Online (Sandbox Code Playgroud)

要指定输出文件名(代替自动生成的文件名),请使用以下选项--outfile

pdfjam --nup 2x2 <infile> --outfile <outfile>
Run Code Online (Sandbox Code Playgroud)


Din*_*ngo 2

要执行IMPOSITION,没有什么比 Multivalent.jar更好了(最新的免费版本,内部有工具,最新的 Multivalent 版本目前托管在 sourceforge 上 - 2009 - 没有更多的 pdf 工具)

您可以使用以下工具下载 Multivalent.jar 版本:

网上人 —— http://multivalent.sourceforge.net/Tools/pdf/Impose.html

使用:

java -cp path...to/Multivalent.jar tool.pdf.Impose -dim (rowsxcols) -paper (paper sizes where pages will be imposed) file.pdf
Run Code Online (Sandbox Code Playgroud)