image-processing - 如何使用图像魔术将图像淡化为蓝色?
问题描述
就像这个问题3一样,我试图实现淡化,但要保持不变的颜色而不是淡化到透明,如何在所有边缘淡化,变成蓝色而不是透明?我尝试了以下方法:
convert doge.png -alpha set -virtual-pixel transparent -background blue -channel A -morphology Distance Euclidean:1,20\! +channel _doge.png
convert doge.png -alpha set -virtual-pixel Blue -channel A -morphology Distance Euclidean:1,20\! +channel _doge.png
不成功。我还考虑了小插图4,结果证明它在我的矩形图像上产生了非常拉伸的椭圆,使它们没有吸引力,因此我需要将淡入淡出保持为黑色矩形,如果我可以使用这种淡入淡出来产生淡入黑色它会够了。
使用第一个命令我得到这个,之前和之后: , 第二个命令出错并出现此错误:
convert: unrecognized virtual pixel method `Blue' @ error/convert.c/ConvertImageCommand/3177.
解决方案
上面提供了几个很好的答案,但这里有一个稍微不同的方法。读取输入图像,克隆它,将其着色为黑色,对其进行修整并添加蓝色边框,使黑色透明,模糊蓝色边框,并将其合成到原始输入上。命令可能看起来像这样......
convert input.png -bordercolor blue -fill black \
\( +clone -colorize 100 -shave 10 -border 10 \
-transparent black -blur 0x10 \) -composite result.png
推荐阅读
- nlp - 使用 nlp 包加载数据集时出现 UnicodeError
- laravel - 命令“october:migrate”未定义
- html - 为什么我的图像叠加在 iPhone 和 iPad 上不起作用?
- calendar - 在特定的日历中写入要导入的 ICS 文件
- powershell - 使用现代终端(例如 Windows 终端)运行 Julia
- python - 为什么 python tkinter 标签不显示计算结果
- spring - 无法在 3.6.10 最终版本中生成统计信息
- node.js - AWS Node.js - 如何获取服务器的 URL 或弹性 IP?
- angular - Typescript 函数不运行由 Parent 传递的 Child 触发的局部变量
- scala - Scala:带有特殊字符的枚举