为什么黑字符中的抗锯齿会使用灰度以外的其他颜色?


17

我是开发人员,不是平面设计师。但是自从几年前我注意到它以来,有一个问题困扰着我。

消除锯齿是一种用于从高对比度分区(例如字符边缘和几何形状)中去除清晰度的方法(如果有人不认识的话)。

当您获得在白色背景上用黑色书写的抗锯齿字符并放大以查看像素时,它们的颜色与灰度中的颜色有所不同,在我看来这是不合逻辑的,因为我们只需要从黑色到白色的平滑过渡。

在此处输入图片说明

问题:为什么颜色与用于在白色背景中对黑色字符进行抗锯齿的灰度颜色不同?

PS .:如果我有足够的声誉,我会创建“ anti-aliasing”标签。


更新:我已经想到了一种理论。
如果要在计算机监视器中显示字母,并且屏幕的最小部分(可能是黑色的)是由三个小灯组成的整个像素,则将导致任何字母中的最小点相当大,但是如果围绕点或内部点组成的抗锯齿只能代表像素的1/3,而从颜色到侧面都有一定的帮助,这意味着字母可以更小。

是吗


5
就是这样 这就是所谓的“子像素渲染”:en.wikipedia.org/wiki/Subpixel_rendering
DA01 2011年

1
在字体渲染中,通常将灰度“平滑”称为抗锯齿,而将彩色版本称为子像素渲染。除了@ DA01的链接外,另请参见:en.wikipedia.org/wiki/Font_rasterization
JariKeinänen11年

1
如果有机会,请重新发布您的更新作为答案:)
JamesHenare 2011年

哇,我毕竟没错。.谢谢大家的链接和解释!
MarceloRamires

Answers:


10

这在窗口中称为clearType(或像Marcelo所说的亚像素渲染),其思想是代替对1个像素使用1值:
(127,127,127)<灰色,

我们可以使该像素的左侧不那么浓烈,而右侧更不那么浓烈
(55,127,185)-偏蓝的色彩

,然后对于右侧像素也相同
(185,127,55)-
其下方的橙色调 显示(无AA)-(早期清除类型)-(常规AA)-(最新清除类型)
在此处输入图片说明

在我看来,它仅适用于小字体(如您现在正在阅读的字体);
对于常规图形,请使用常规AA(实际上,photoshop不支持clearType)
希望这会有所 帮助!请享用


3

我的猜测毕竟是正确的:

如果要在计算机监视器中显示字母,并且屏幕的最小部分(可能为黑色)是由三个小灯组成的整个像素,则将导致任何字母中的最小点相当大,但是如果围绕点或内部点组成的抗锯齿只能代表像素的1/3,而从颜色到侧面都有一定的帮助,这意味着字母可以更小。

检查问题中的评论,以获得DA01和koiyu的更多帮助(谢谢)。


仅供参考,以下是DA01和koiyu的评论中的Wikipedia链接:

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.