在单个 ImageMagick 或 Convert 命令中裁剪和合并 3 个图像
Crop and merge 3 images in single ImageMagick or Convert command
想要从 picture.jpg 裁剪 3 个区域并将这 3 个图像合并为一个。
是否可以在单个 imagemagick 或转换命令中裁剪和合并这 3 张图像?
如果在单个命令中不可行,如何将 3 个图像合并到单独的命令中?
我的目标是避免在单个命令中保存临时图像。
我使用以下命令获取每个区域。
convert picture.jpg -crop 212x32+717+190 -resize 318x48! out1.jpg
convert picture.jpg -crop 440x231+20+251 -resize 660x347! out2.jpg
convert picture.jpg -crop 440x231+490+251 -resize 660x347! out3.jpg
- 我要获取的输出图像大小为 1336x411 像素。
每个裁剪图像在最终输出图像中的位置为:
out1.jpg 位于 (x,y) = (509,0)
out2.jpg 位于 (x,y) = (0,64)
out3.jpg 位于 (x,y) = (676,64)
picture.jpg
output.jpg
使用 IM 的 "convert" 您可以读取原始图像,然后在括号内“-clone”它几次以处理输入图像的副本。在括号内,您可以按您想要的方式“-crop”每个副本,并“-repage”它们以便每个包含完成的 canvas 大小和位置信息。之后,您可以“-delete”原始输入,“-flatten”剩余的三个图像到一个 canvas,然后写入输出。
命令在 Windows 命令提示符下看起来像这样。
convert input.jpg ^
( -clone 0 -crop 212x32+717+190 -resize 318x48! -repage 1336x411+509+0 ) ^
( -clone 0 -crop 440x231+20+251 -resize 660x347! -repage 1336x411+0+64 ) ^
( -clone 0 -crop 440x231+490+251 -resize 660x347! -repage 1336x411+676+64 ) ^
-delete 0 -flatten output.png
如果您 运行 在 *nix 系统上,您需要用反斜杠“\”替换那些连续的插入符“^”,并用反斜杠“\( .. . \)".
想要从 picture.jpg 裁剪 3 个区域并将这 3 个图像合并为一个。
是否可以在单个 imagemagick 或转换命令中裁剪和合并这 3 张图像? 如果在单个命令中不可行,如何将 3 个图像合并到单独的命令中?
我的目标是避免在单个命令中保存临时图像。
我使用以下命令获取每个区域。
convert picture.jpg -crop 212x32+717+190 -resize 318x48! out1.jpg
convert picture.jpg -crop 440x231+20+251 -resize 660x347! out2.jpg
convert picture.jpg -crop 440x231+490+251 -resize 660x347! out3.jpg
- 我要获取的输出图像大小为 1336x411 像素。
每个裁剪图像在最终输出图像中的位置为:
out1.jpg 位于 (x,y) = (509,0) out2.jpg 位于 (x,y) = (0,64) out3.jpg 位于 (x,y) = (676,64)
picture.jpg
output.jpg
使用 IM 的 "convert" 您可以读取原始图像,然后在括号内“-clone”它几次以处理输入图像的副本。在括号内,您可以按您想要的方式“-crop”每个副本,并“-repage”它们以便每个包含完成的 canvas 大小和位置信息。之后,您可以“-delete”原始输入,“-flatten”剩余的三个图像到一个 canvas,然后写入输出。
命令在 Windows 命令提示符下看起来像这样。
convert input.jpg ^
( -clone 0 -crop 212x32+717+190 -resize 318x48! -repage 1336x411+509+0 ) ^
( -clone 0 -crop 440x231+20+251 -resize 660x347! -repage 1336x411+0+64 ) ^
( -clone 0 -crop 440x231+490+251 -resize 660x347! -repage 1336x411+676+64 ) ^
-delete 0 -flatten output.png
如果您 运行 在 *nix 系统上,您需要用反斜杠“\”替换那些连续的插入符“^”,并用反斜杠“\( .. . \)".