应用带有imagemagick的圆形渐变

时间:2017-10-02 19:23:40

标签: imagemagick gradient

我想在图像上绘制圆形渐变蒙版,以便图像在半径为R的圆的外侧开始渐弱,并且渐变为白色,半径r <1。 R.有没有办法做到这一点+怎么做?

示例源图像:(不是我尝试使用的真实图像,但它并不重要)

enter image description here

如果我这样做

convert flag1.png -fill white -draw "circle 400,234 200,200" flag2.png

然后我明白了:

enter image description here

在gimp我做了类似的事情,在另一层有一个径向渐变;我的尝试看起来很糟糕,但这模糊地说是我想要的,除了它不是圆形边界的平滑过渡,而我糟糕的手眼协调意味着我没有让它居中:

enter image description here

嗯:我混淆了我的方式(通过http://www.imagemagick.org/discourse-server/viewtopic.php?t=16692)到

convert flag1.png -size 800x468 radial-gradient:black-white -compose copy_opacity -composite  flag3.png

这给了我一些与我想要的东西接近的r = 0(除非在正中心,否则永远不会完全淡出);有没有办法扩展到一个白洞,逐渐消失到一个更大的洞? -compose copy_opacity -composite实际上做了什么?

enter image description here

1 个答案:

答案 0 :(得分:1)

不确定您要查找的是什么,但您可以尝试使用以下百分比:

convert flag.png \( -size 800x468 radial-gradient:black-white -contrast-stretch 60%x0% \) -compose copy_opacity -composite  flag3.png

enter image description here

括号中的部分为黑色和白色圆圈,-compose copy_opacity -composite部分采用该黑白圆圈作为原始标志图像的Alpha /透明层。

括号确保对比度拉伸仅应用于Alpha /透明层而不是原始彩色图像。