2014-12-14

次像素渲染:如何检测屏幕是RGB,GBR或其它类型?

为了在低分辨率显示器(比如笔记本14寸的1366×768分辨率显示器)上更平滑地显示字体,GNU/Linux采用了次像素渲染技术。次像素渲染的意思是,将一个像素看作RGB三个像素对待,进行更细微的显示控制。而由于人眼只能识别RGB混合的颜色,因此次像素渲染不会改变视觉颜色。

不同类型显示器的像素形状和布局
不同类型显示器的像素形状和布局
RGB次像素渲染的例子,通过分别控制R,G,B像素使字体更加清晰平滑
RGB次像素渲染的例子,通过分别控制R,G,B像素使字体更加清晰平滑

不同显示器的像素形状和布局是不同的。通常LCD会采用从左到右RGB的排布方式,但也有些是BGR,或者从上到下排布。

那么,要怎么知道我的显示器是RGB,GBR或其他呢?需要放大镜?The Lagom LCD monitor test pages 提供了一个很简单的方法。subpixel仔细盯着中间蓝色方块与红色的交界边缘,戴眼镜的朋友请摘掉眼镜。如果看见左边缘仿佛有黑线,则说明屏幕是RGB像素。如果右边缘有黑线,说明是BGR。如果上边缘有黑线,说明是V-RGB。如果下边缘有黑线,说明是V-BGR。此方法只适用于LCD。

之后就可以更改fontconfig的次像素渲染设置了。fontconfig必须设置正确的次像素渲染类型才能获得好的字体显示效果。

One Reply to “次像素渲染:如何检测屏幕是RGB,GBR或其它类型?”

  1. 总算明白怎么配置,折腾了一个月,用了你软件才把 fedora 中文字体调教能看了,万分感谢!

发表评论

电子邮件地址不会被公开。 必填项已用*标注