字体渲染

来自Ubuntu中文
Qiii2006留言 | 贡献2010年8月16日 (一) 22:18的版本 →‎参考文章
跳到导航跳到搜索

基础知识

Font hinting/hintstyle:字体微调,中文字体的hinting制作非常麻烦,所以微米黑的中文就是没hinting,微软雅黑有。

autohint:没hinting的字体能开hinting就是autohint的功劳,但效果嘛,毕竟是自动处理,非人力,有好有坏,自己看。

subpixel rendering:次像素渲染。

Anti-aliasing:简称AA,抗锯齿,俗称 AA 渲染,字体平滑。

FreeType:Linux 上的字体渲染引擎。

Pango:Linux 上的字体渲染引擎。

Cairo 、libXft:与字体显示有关的两个基础库,它们有没开启上面的渲染直接影响到程序的字体显示,Ubuntu 的这两个库默认已经启用渲染。

专利

所有跟hinting有关的专利都在 2010年5月过期(原本掌控在Apple和Microsoft手中),Freetype的2.4版开始默认启用hinting字体算法。

渲染的设定

fontconfig:通过编辑fontconfig的配置文件可以单独设定某些字体的hinting和AA。

GNOME“外观首选项”:设定 GNOME 2 下的字体渲染。

KDE 系统设置:设定 KDE SC 4 下的字体渲染

fontconfig

配置文件路径见字体#Linux字体

GNOME 和 KDE 设置都是读取

~/.fonts.conf #用户配置文件,随便怎么搞,只对当前用户运行的程序有效

有些人追求极致效果,英文字体、中文字体的渲染设置是不同的,就得动这个文件。

GNOME

据说 cairo 有 bug,见 解决Gnome全局字体渲染设置与fontconfig之冲突。比较满意的雅黑显示效果

KDE

KDE 系统设置-应用程序界面-字体,设置是针对全部字体的(其实也是改fontconfig,但改的是全局),无法如fontconfig那样细分,但可以用“系统设置”选项来根据fontconfig进行更细致的设定(但你得编辑fontconfig的配置文件)。


参考文章

字体平滑,反锯齿,和次像素渲染(译文)

Archlinux-wiki:字体