例如 1.jpg、2.jpg 的尺寸分别为 axb、cxd。
如果我运行类似的程序convert +append 1.jpg 2.jpg out.jpg
。我希望 out.jpg 是 (a+c)xb 或 (a+c)xd。
如果我运行类似的程序convert -append 1.jpg 2.jpg out.jpg
。我希望 out.jpg 是 ax(b+d) 或 cx(b+d)。
可以使用 Imagemagick 来做吗?
答案1
我最终写了一个小脚本。
水平附加两幅图像并匹配最小高度:
h1=$(identify -ping -format "%h" 1.jpg) &&
h2=$(identify -ping -format "%h" 2.jpg) &&
min_h=$(( h1 < h2 ? h1 : h2 )) &&
convert 1.jpg -resize x$min_h\> 1_shrink.jpg &&
convert 2.jpg -resize x$min_h\> 2_shrink.jpg &&
convert +append 1_shrink.jpg 2_shrink.jpg out.jpg &&
rm 1_shrink.jpg 2_shrink.jpg
垂直附加两幅图像并匹配最小宽度:
w1=$(identify -ping -format "%w" 1.jpg) &&
w2=$(identify -ping -format "%w" 2.jpg) &&
min_w=$(( w1 < w2 ? w1 : w2 )) &&
convert 1.jpg -resize $min_w\> 1_shrink.jpg &&
convert 2.jpg -resize $min_w\> 2_shrink.jpg &&
convert -append 1_shrink.jpg 2_shrink.jpg out.jpg &&
rm 1_shrink.jpg 2_shrink.jpg
如果要匹配到两幅图像的最大尺寸,只需将括号中的条件从 更改为<
即可>
。