【问题标题】:Imagemagick crop transparent image to maskImagemagick 将透明图像裁剪为蒙版
【发布时间】:2017-04-12 19:01:05
【问题描述】:

这是我的原图(注意透明边框)src.png

这是我想用来裁剪的蒙版。白色表示保留,黑色表示裁剪mask.png:(注意不一定是正方形。可以是心形或星星或任何东西)

我还有transparent.png,这是一个完全透明的图像。三张图片的尺寸相同。

因此,运行此命令会生成以下图像:

convert transparent.png src.png mask.png -composite out.png

完美遮罩,但现在我希望将其裁剪为白色遮罩区域的大小。使用-trim 有点接近,但它消除了遮罩内的透明区域。

如何将蒙版图像调整为蒙版中白色区域的大小?

【问题讨论】:

  • 屏蔽后使用-trim +repage

标签: imagemagick


【解决方案1】:

我不确定我是否理解您想要的结果。为什么需要完全透明的图像?这些中的任何一个都能满足您的需求吗?

带有遮罩区域的全尺寸透明图像:

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

【讨论】:

    【解决方案2】:

    不确定我是否理解您想要做什么,尤其是为什么您需要全尺寸透明画布。您的命令在我的 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
    

    【讨论】:

      【解决方案3】:

      如果要从图片中裁剪出正方形,则无需使用蒙版,只需裁剪即可:

      magick Uq328.png -crop -crop 111x111+570+331 +repagecropped.png

      根据https://legacy.imagemagick.org/Usage/crop/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-11-03
        • 2013-06-10
        • 1970-01-01
        • 2019-01-11
        • 2012-05-19
        • 2019-10-11
        • 1970-01-01
        相关资源
        最近更新 更多