Imagemagick将透明图像裁剪到遮罩
这是我的原始图像,请注意透明边框src.png: 这是我想用来修剪的面具。白色表示保留,黑色表示裁剪遮罩。png:请注意,它不一定是正方形。它可以是一颗心,一颗星星或任何东西 我还有transparent.png,它是一个完全透明的图像。所有三个图像都具有相同的尺寸 因此,运行此命令将生成以下图像: 转换transparent.png src.png mask.png-composite out.png 这是完美的遮罩,但现在我希望它裁剪成白色遮罩区域的大小。使用-trim有点接近,但是它去掉了遮罩内部的透明区域Imagemagick将透明图像裁剪到遮罩,imagemagick,Imagemagick,这是我的原始图像,请注意透明边框src.png: 这是我想用来修剪的面具。白色表示保留,黑色表示裁剪遮罩。png:请注意,它不一定是正方形。它可以是一颗心,一颗星星或任何东西 我还有transparent.png,它是一个完全透明的图像。所有三个图像都具有相同的尺寸 因此,运行此命令将生成以下图像: 转换transparent.png src.png mask.png-composite out.png 这是完美的遮罩,但现在我希望它裁剪成白色遮罩区域的大小。使用-trim有点接近,但是它去
如何将遮罩图像的大小调整为遮罩中白色区域的大小?我不知道您想做什么,尤其是为什么需要全尺寸透明画布。您的命令在my ImageMagick版本7上不会给出相同的结果 此命令可能是您正在查找的命令:
convert src.png mask.png -compose darken -composite -trim out.png
它给出了这一点-我人为地添加了一个红色边框,以便您可以在StackOverflow的白色背景上看到整个范围:
或者,您可能希望从遮罩中删除修剪框,并使用该框裁剪源:
convert mask.png -format %@ info:
113x113+570+33
convert src.png -crop 113x113+570+33 result.png
我不确定我是否理解你想要的结果。为什么需要完全透明的图像?这两个都是你想要的吗 带遮罩区域的全尺寸透明图像显示:
convert src.png mask.png -alpha off -compose copy_opacity -composite result1.png
修剪为您想要的零件:
convert src.png mask.png -alpha off -compose copy_opacity -composite -trim +repage result2.png