【发布时间】:2017-08-17 19:20:10
【问题描述】:
我想裁剪图像(区域 1),然后将裁剪图像的特定子区域(区域 2)设为白色,最后使背景透明。
我可以通过以下 3 个单独的命令获得所需的输出。
convert input.jpg -crop 908x391+21+545 out1.jpg 'crop image (area1)
convert out1.jpg -fuzz 100% -fill '#ffffff' -region 908x28+4+33 -opaque white out2.jpg 'make blank particular region (area2)
convert out2.jpg -bordercolor "#0019ff" -border 4x4 -transparent white output.png 'make all white background transparent
但是当我尝试像下面这样将 3 个命令合并为一个命令时,在输出中仍然出现 area2 并且背景不透明。
convert input.jpg -crop 908x391+21+545 -fuzz 100% -fill '#ffffff' -bordercolor "#0019ff" -border 4x4 -region 908x28+25+578 -transparent white output.png
我怎样才能在一个命令中做到这一点?谢谢
更新
convert input.jpg \
\( -clone 0 -crop 908x391+21+545 +repage -region 908x28+4+33 -fill white \
-colorize 100 +region -resize 908x681! -bordercolor "#f019ff" -border 4x4 \
-repage 1842x689+0+0 \) \
\
\( -clone 0 -crop 908x391+21+4444 +repage -region 908x28+4+33 -fill white \
-colorize 100 +region -resize 908x681! -bordercolor "#f019ff" -border 4x4 \
-repage 1842x689+926+0 \) \
-delete 0 -flatten -resize 1180 -transparent white OOUUTT.png
【问题讨论】:
标签: imagemagick crop transparent region