将多个PDF文件合并为一个(按矩阵排列)


11

有一组PDF文件的,可以说:in-01.pdfin-02.pdfin-03.pdf,...我想所有的人组合成一个单一的一个,形成M x N矩阵。

该命令montage允许这样做(M并且N应该为整数):

montage -mode concatenate -tile NxM in-*.pdf out.pdf

问题是生成的PDF的大小很大,而我希望它(可能只是)比所有输入PDF大小的总和大一点。我认为montage是先将输入的PDF转换为图像,然后从这些图像中创建输出PDF(例如,原始PDF中的文本不会在输出PDF中显示为文本,而是显示为质量较低且较大的图像尺寸)。

我想应该有一种方法可以做到这一点(例如,LATEX允许将PDF图像插入另一个PDF中,而无需先将其转换为图像)。

我正在寻找在GNU / Linux系统下使用免费软件工具的命令行替代方案。

注意:我们可以假设这些PDF文件具有完全相同的尺寸(宽度和高度)。它们是自动生成的PDF图像,通常由图形/图形(简单的形状,线条和矩形)和一些文本(标题,标签...)组成。


1
您是正确的montage:)。
米哈尔戈尔诺-

Answers:


9

您可以使用该实用程序pdfnuppdfjam套件。

pdfnup in.pdf --nup 3x3

应该输出文件in-nup.pdf,其中in.pdf的页面按照从原始pdf到3x3矩阵的一系列页面排列。

您应该将所有pdf文件合并为一个,还必须为输出文件指定纸张尺寸,请参阅pdfjam文档以了解详细信息。


1
如果所有输入文件中都带有前缀(即in-),则可能要pdfnup in-*.pdf --nup 3x3 --outfile out.pdf避免使用具有相同前缀的输出文件。另外,请注意您实际上并不需要将所有输入文件合并为一个(您可以简单地使用*通配符)。您可能需要将其添加到答案中。
Peque 2014年

谢谢!有用。节省了我很多时间。
巴黎,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.