有很多方法可以做到這一點。選擇最符合你的思維方式的那個!我使用的測試圖片是這樣的:
1.jpg => red
2.jpg => green (lime actually)
3.jpg => blue
方法1
convert -background none \
1.jpg -resize 1680x1050! \
\(2.jpg -resize 1920x1200! \) +append \
\(3.jpg -resize 1920x1080! -gravity east \) -append \
result.png

,說... 「保留所有未上漆的透明調整圖像大小1.調整圖像大小2並將它放在圖像1的右側(+append
)。調整圖像3的大小並將其對齊East。在圖像1和2下面追加(-append
)。
方法2
convert -background none \
\(2.jpg -resize 1920x1200! \) \
\(3.jpg -resize 1920x1080! \) -append \
\(1.jpg -resize 1680x1050! \) +swap +append result.png
即說... 「加載和調整圖像2.負載並調整其大小圖像3.將圖像3的圖像2(-append
)的下方。負載並調整其大小圖像1 。在圖像列表中將圖像1放置在圖像列表(+swap
)之前。現在將列表中的第二個圖像添加到第一個圖像(+append
)的右側。
方法3
convert -background none \
1.jpg -resize 1680x1050! -extent 3600x2280 \
\(2.jpg -resize 1920x1200! -geometry +1680 \) -composite \
\(3.jpg -resize 1920x1080! -geometry +1680+1200 \) -composite result.png
即說... 「留下任何未上漆區是透明的。原圖1調整大小然後將其在畫布延伸到全輸出大小,以適應後續圖像。原圖2,調整大小,位置和圖示到畫布上。加載圖像3,調整大小和圖示到畫布上。「
方法4
只是爲了好玩,這裏是思考它的一個完全不同的方式:
{ convert 1.jpg -resize 1680x1050! miff:- ; \
convert 2.jpg -resize 1920x1200! miff:- ; \
convert -size 1680x1 xc:none miff:- ; \
convert 3.jpg -resize 1920x1080! miff:- ; } |
montage -background none -geometry +0+0 -tile 2x2 miff:- result.png
,說... 「開始複合語句,可以加載和調整4圖像並將它們中的每一個作爲MIFF(Magick圖像文件格式)發送到montage
命令,這將把它們全部放在2x2
網格(-tile 2x2
)中,它們之間沒有空格(-geometry +0+0
)。「