LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 6223|回复: 34

超 Noob 帖,大牛们请忽略,有关字体设置的老生“新”谈

[复制链接]
发表于 2008-9-29 01:37:10 | 显示全部楼层 |阅读模式
最近回归 Arch,但却被 Swiftfox 的字体恶心够呛,在 IRC 里“兴风作浪”掀起“9.26截图日”之后,在 superjet/oceanboo/Darksair 直接/间接的帮助之下,终于正常设置了雅黑字体(虽然还是感觉略微有一点缺憾),现总结几条。(说明:本文中的图片请点击之后,到新链接点击“原图”查看大图)

1.对于雅黑这样恶心人的字体,不安装打好 lcd 补丁的包是很不爽的(废话!),这些包包括(freetype2、fontconfig、libxft、cairo)不过安装了 *-lcd 和 *-ubuntu 之后,发现 *-ubuntu 的包安装之后,会在 /etc/fonts/conf.avail 里面多出来几个可供你软链的文件,如果按照 lh 在他博客上所说的 *-ubuntu 的包只是将字体颜色显示得更深的话,那么权当这多出来的几个文件就是方便大家设置的DD吧(不知道这么说对不对?)

2.为什么一上来不是大谈特谈 .fonts.conf or local.conf or fonts.conf 呢?这个问题可以在 /etc/fonts/fonts.conf 这个文件里面找到答案。按照此文件的说明,Fontconfig 里的字体渲染配置读取的都是以 /etc/fonts/fonts.conf 这个文件为核心,读取 /etc/fonts/conf.d/ 里的软链文件,依照 [0~9][0~9].conf 的顺序来读取。平常经常用到的 .fonts.conf 和 local.conf 一个是 50 开头的,一个是 51 开头的,即首先读取个人设置 .fonts.conf 里的,local.conf 则明显是一个具有全局功能的配置文件。

所以对字体的设置,可以完全依赖于 /etc/fonts/conf.d/ 里的软链 + .fonts.conf 了。而 /etc/fonts/fonts.conf 会随着 fontconfig 的安装而被覆盖,不能作为自定义字体设置的对象。

3.搞明白了字体设置的文件了,下面就可以开始进行雅黑的字体设置了,当然要先安装 *-ubuntu / *-lcd (任选一个,我选的是 *-ubuntu)以便获得 lcdfilter 这个配合次像素渲染的设定。

我(笔记本LCD + 雅黑)从 /etc/fonts/conf.avail 里面软链出来了以下几个:

10-antialias.conf            
10-hinting-slight.conf         
10-hinting.conf               
10-sub-pixel-rgb.conf
11-lcd-filter-lcddefault.conf

意思就是打开AA,hinting,并设置 hinting 为轻微调节,次像素渲染为rgb,lcdfilter 设置为默认(这里的 lcd filter 其实还有其他三个设定,这在 Wiki 有提到)。

4.然后把字体渲染次序以及字体单独设定和部分全局的其他设定放到 ~/.fonts.conf 即可。以后要修改直接到 .fonts.conf 里面修改之后,重新打开新的任何窗口就生效了,在 local.conf 里面设置的话,需要重启X。

5.另外,各个字体的单独设定很重要。比如,这里全局设定关闭了 Auto Hinting,但是雅黑不日使用 Auto Hinting 的话,会出现字体高矮不一的情况,但开启 Auto Hinting 字体会显得更模糊,这就需要取舍了。有关这一点,大家可以一下面 oceanboo 的这张截图(关闭 Auto Hinting,使用 Hinting Full),自己调节对比以下就清楚了:






6.Swiftfox 里面的字体渲染貌似和 Firefox 的不一样,我安装的 swiftfox3-prentium-m 调到最后渲染的效果:




而 oceanboo 使用雅黑字体对同一网页的渲染结果(Firefox):



Swiftfox 里的效果不如 Firefox 里的……囧了。


7.建议使用这个网站来检查次像素渲染是否恰当。这个网站的确不怎么好看,但是如果次像素有问题的,可以看到页面里的每条新闻标题(蓝色)和发布日期(绿色)周围有很明显的黄色光晕,下面是 oceanboo 的截图,大家可以做一个对照(点击后再看更清晰):





[其他阅读]

A.有关 Hinting 和 AutoHinting 的简要解说可见 Gentoo Wiki 的这篇:http://gentoo-wiki.com/HOWTO_Xorg_and_Fonts#The_Xft_Font_System

B.雅黑字体的经典 .fonts.conf 文件:Gentoo 与 Ubuntu 下的字体调整 (12.06 更新)

C.对上面那个文件部分未说明内容的说明:ubuntu中文美化----微软雅黑篇(0618更新)

D.一些有关 fontconfig 的补充说明: Corsair制作的字体配置教程下载

E.Wiki 词条:
Fonts
Xorg Font Configuration

F.我使用的字体与相关设置

  从 win7 提取出来的 雅黑6.0 from 极限论坛,据说清析度有加强,感觉不甚明显,需要的朋友可下载 <----- 11月11日更新
  雅黑字体-下载
  我的.fonts.conf(修改自 superjet 的设置文件,感谢!) <---- 10.4已修改格式,模仿 oceanboo 的配置文件格式,这下清爽了<---- 10.23修改雅黑单独 hinting 为 full,增加预览图

现在的雅黑字体预览效果:


  /etc/fonts/fonts.conf /etc/fonts/local.conf 使用的系统默认,未做变更

G.疑问

  我发现一个小问题,照现在的设定,配出来的效果已经几乎和 oceanboo 在 gentoo 下的效果差不多了。可是好像使用 Firefox 感觉好像稍稍不如 epiphany 下的效果呢? 这两个浏览器的渲染还不太一样么?

PS  好吧,我有字体洁癖,表打我……我遁~
发表于 2008-9-29 02:38:26 | 显示全部楼层
这样?






回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-29 08:24:56 | 显示全部楼层
Post by 狱卒;1888374
这样?
……


不错阿~ 你用的 *-lcd 的包?我这里貌似和你的效果稍微有一点点的不同,*-ubuntu 出来的效果,字体颜色的确有点深
回复 支持 反对

使用道具 举报

发表于 2008-9-29 08:55:31 | 显示全部楼层
雅黑确实够丑。
回复 支持 反对

使用道具 举报

发表于 2008-9-29 09:20:37 | 显示全部楼层
Post by cyf3732;1888389
不错阿~ 你用的 *-lcd 的包?我这里貌似和你的效果稍微有一点点的不同,*-ubuntu 出来的效果,字体颜色的确有点深


我用的*-ubuntu的包。 -_-!!
回复 支持 反对

使用道具 举报

发表于 2008-9-29 09:21:44 | 显示全部楼层
Post by zhuqin_83;1888392
雅黑确实够丑。


当然丑啊,从一开始我就对它的高低不平很不满。
回复 支持 反对

使用道具 举报

发表于 2008-9-29 09:42:56 | 显示全部楼层
一张图也没看清。前面的是链接到外面了,还是一样小,后面的不显示
回复 支持 反对

使用道具 举报

发表于 2008-9-29 11:03:18 | 显示全部楼层
楼主,其实可以不用打什么lcd补丁,自己写写local.conf,而且不会使英文变得模糊,只针对雅黑开hinting和次像素渲染就行了。我的blog的方法:http://dreamland.blog.51cto.com/417830/99637
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-29 11:43:37 | 显示全部楼层
@wrfwsh 在这里点击到 Yupoo 那边之后,点原图就能看到正常大小的了

@zhuqin 都说是超级 noob,你还来…… 话说你的 DejaVu Sans YuanTi Mono,还是很漂亮滴,不过偶是 XP 下雅黑看习惯了,唉,可怕的习惯,呃……

@rainy 我也对雅黑的高低不平相当不爽阿……

@dreamawake 感谢你的 local.fonts!学习了~
回复 支持 反对

使用道具 举报

发表于 2008-9-29 14:29:34 | 显示全部楼层
还没找到比雅黑更好的字体
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表