答案 0 :(得分:5)
ImageMagick的另一种方法是使用smush而不是追加。 Smush允许偏移。
创建图片:
convert -size 250x250 xc:green green.png
convert -size 250x250 xc:black black.png
convert -size 250x510 xc:red red.png
现在合并它们:
convert -background white red.png \
\( green.png black.png -smush 10 \) \
+smush 10 \
result.png
答案 1 :(得分:2)
假设图像尺寸正确,这可能是最简单的:
convert -size 10x10 green.png xc:white black.png -append xc:white red.png -reverse +append result.png
那说...... “使小间隔物的大小为10x10。加载绿色图像,然后制作白色间隔物,然后加载黑色图像并将它们垂直附加在一起。制作另一个白色间隔物。加载红色图像。反转图像列,使最近添加的红色列位于左侧而不是右侧,并排放置图像。“
我这样做了(从右侧开始)因为GraphicsMagick没有提供括号。
如果图像的尺寸不合适,你会看到更像这样的东西 - 仍然是一个命令:
convert -size 10x10 \
\( green.png -resize somehow \) \
xc:white \
\( black.png -resize somehow \) \
-append \
xc:white \
\( red.png -resize somehow \) \
-reverse +append result.png
答案 2 :(得分:2)
在ImageMagick中执行此操作的另一种方法是将3个图像合成到白色背景图像的正确角落。
创建图片:
convert -size 250x250 xc:green green.png
convert -size 250x250 xc:black black.png
convert -size 250x510 xc:red red.png
过程:
convert -size 510x510 xc:white \
red.png -gravity northwest -composite \
green.png -gravity northeast -composite \
black.png -gravity southeast -composite \
result.png