如何避免这种 ImageMagick 抗锯齿变色?
How do I avoid this ImageMagick anti-aliasing discoloration?
更新:
感谢 paddy 的建议,我注意到抗锯齿功能在我的一台机器上看起来不错,但另一台机器却不行。
我正在尝试创建一个 24x24 的 png,它具有具有透明背景的填充形状。这是我正在使用的命令:
convert -size 24x24 xc:none \
-fill red \
-draw "path 'M 0,0 L 24,0 A 24,24 0 0,0 0,24 Z' " result.png
"xc: _____" specifies a background color. (maybe this is where I'm mistaken?)
输出给出了正确的形状,但形状和透明区域之间的边界(即颜色和透明度之间的抗锯齿边缘)明显变暗:
右边显示的抗锯齿是我想要的ImageMagick。这是我对不同的 xc 值得到的结果:
如您所见,抗锯齿与纯色混合得很好,但与透明度混合得不好。 ImageMagick 指南有 a section on anti-aliasing 及其可能导致的问题,但通读它,none 的示例涵盖了透明度。有什么想法吗?
你试过设置-background Red -alpha Background
吗?我怀疑背景颜色默认为黑色,然后在透明背景下用红色模糊。
尝试 xc:transparent
而不是 xc:none
convert -size 24x24 xc:transparent \
-fill red \
-draw "path 'M 0,0 L 24,0 A 24,24 0 0,0 0,24 Z' " result.png
正如@paddy 在评论中指出的那样,此问题已在更高版本的 IM 中得到解决
更新到更新版本的 ImageMagick/convert (6.9.1-6 Q16 i686 2015-06-30) 解决了我的问题。 (谢谢,稻田)
更新:
感谢 paddy 的建议,我注意到抗锯齿功能在我的一台机器上看起来不错,但另一台机器却不行。
我正在尝试创建一个 24x24 的 png,它具有具有透明背景的填充形状。这是我正在使用的命令:
convert -size 24x24 xc:none \
-fill red \
-draw "path 'M 0,0 L 24,0 A 24,24 0 0,0 0,24 Z' " result.png
"xc: _____" specifies a background color. (maybe this is where I'm mistaken?)
输出给出了正确的形状,但形状和透明区域之间的边界(即颜色和透明度之间的抗锯齿边缘)明显变暗:
右边显示的抗锯齿是我想要的ImageMagick。这是我对不同的 xc 值得到的结果:
如您所见,抗锯齿与纯色混合得很好,但与透明度混合得不好。 ImageMagick 指南有 a section on anti-aliasing 及其可能导致的问题,但通读它,none 的示例涵盖了透明度。有什么想法吗?
你试过设置-background Red -alpha Background
吗?我怀疑背景颜色默认为黑色,然后在透明背景下用红色模糊。
尝试 xc:transparent
而不是 xc:none
convert -size 24x24 xc:transparent \
-fill red \
-draw "path 'M 0,0 L 24,0 A 24,24 0 0,0 0,24 Z' " result.png
正如@paddy 在评论中指出的那样,此问题已在更高版本的 IM 中得到解决
更新到更新版本的 ImageMagick/convert (6.9.1-6 Q16 i686 2015-06-30) 解决了我的问题。 (谢谢,稻田)