使用 imagemagick 在 alpha > 90% 时转换像素 alpha 通道

convert pixel alpha channel when alpha > 90% using imagemagick

我需要转换现有的 png 2 区域文件:一个区域是透明的,另一个区域是红色或蓝色不透明的(此处示例:http://urlz.fr/31t2)。 我想保持第一个区域透明并将不透明区域转换为 30% 或 50% 的不透明度。 我正在拼命寻找使用 Imagemagick 的解决方案,作为一名无线电工程师,我对 IM 资源不满意...... 我只能将整个图像转换为 X% 的不透明度(convert input.png -alpha set -channel A -evaluate set 50% output.png ) 但这不是我要找的!

你的问题比较难理解,但我想你想要的是:

convert image.png -channel A -fx "u>0.9?0.3:u" result.png

凡是alpha大于0.9的,都会设置为0.3,否则保持不变。

感谢您快速准确地回答我不太准确的问题! 这看起来像我刚刚发现的东西(除了使用 "u" 作为变量而不是值):

convert input -channel A -fx "(a>0.99)?0.3:0" output

当然,你的文笔更优雅了!