Imagemagick复合叠加不透明度

时间:2014-05-14 05:08:24

标签: imagemagick composite

我使用imagemagick通过混合选项将一个图像叠加到另一个图像上。我想将叠加图像的不透明度调整为约60%。我只想调整前景图像,而不是合并组。我目前有:

exec("convert $img_in test_images/test_opacity.jpg -compose screen -composite $img_out");

我喜欢这样的事情:

exec("convert $img_in (test_images/test_opacity.jpg -opacity 0.6) -compose screen -composite $img_out");

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:4)

使用+level-level-color选项调整白/黑点。这通常会使面具具有躲避"或"燃烧&#34 ;;其中,撰写Screen会尊重。

convert source.jpg \
        \( mask.jpg -normalize +level 0,60% \) \
        -compose screen -composite destination.jpg

您还可以通过使用-alpha-channel&来定义Alpha通道来调整蒙版的不透明度。 -evaluate。见this question。但这并不适用于撰写Screen,因为它期望黑色和黑色之间的范围。白。

convert source.jpg \
        \( mask.jpg -alpha set -channel A -evaluate set 60% \) \
        -compose screen -composite \
        destination.jpg