如何将图片合并到单个 PDF 或图像文件中

如何将图片合并到单个 PDF 或图像文件中

我有一些想要合并的图片。我的意思是,如果我有 5 张图片,我想按以下方式排列它们:

平铺布局

我想使用命令来执行此操作,以便可以使用 Bash 脚本。例如,命令可以是这样的:

foo image1 image2 image3 image4 image5

我有很多图像,所以该命令应该能够处理大量文件。

输出可以是 PDF 格式,也可以是图像格式。

答案1

参见( )montage中的命令。imagemagicksudo apt-get install imagemagick

montage -geometry 250x250+0+0 image1.png image2.png out.png

这将调整每幅图像的大小(至 250px,无变形)并将它们无边距地合并。

更多蒙太奇示例


您还可以使用convert(带通配符的示例):

convert -append pixpixp-*.jpg newpix.jpg

答案2

我曾是做类似的事情前几天。网格似乎很流行。在我的例子中,我将可变数量的图像传输到网格中,我只想创建一个 17 宽的图像和任意数量的图像高度。

montage -mode concatenate $(printf 'rose: %.0s' {1..136}) -resize 100x80 -tile 17x output.jpg

这仅使用 136 张玫瑰图像来形成 8 块高网格。显然,您需要更改输入图像列表的组。如果您只想设置图块数量,$(...)则需要将图块变量设置为类似值。2x

在输出为 PDF 方面,您只需更改扩展名即可。因此,您将看到类似以下内容的内容:

montage -mode concatenate $(printf 'rose: %.0s' {1..5}) -tile 2x out.pdf

相关内容