显然,由于版权问题,FC3下的宋体还是保持原样。长时间面对这么虚的字体,就算没有审美疲劳,眼睛也受不了。在解决字体的同时,我们先为让FC3(对于Redhat系列通用)较彻底地支持、显示中文而小改一下:
更改/etc/bashrc,加入
export LANG=zh_CN
export LC_ALL=zh_CN
export LC_CTYPE=zh_CN
更改/etc/sysconfig/i18n,找到LANG=及SUPPORTED=两行,改为:
LANG="zh_CN"
SUPPORTED="zh_CN.GBK:zh_CN.UTF-8:zh_CN:zh"
接下来,先说明一下字体发虚的原因:一般TTF文件是矢量字库,在显示较小比例的字时就有点大材小用,而解决方法就是在文件里加入点阵字库(一般好像是9-12pt的,像平常看到的9pt的宋体,其实就是点阵的)。字体的美化工作开始,方案有下面几种:
1)下载台湾的Firefly于2004.10.28峻工的一个字库fireflyfont.ttf。它基于文鼎的字库,所以叫AR PL New Sung。而之所以说“峻工”,是因为这确实是一个伟大的有里程碑意义的工程,为此他耗费了5个月,点坏了一个鼠标!我们终于有了一个没有版权问题的Free字体。到这里下载。把该字库拷到/usr/share/fonts/zh_CN/TrueType/目录下,重新启动X,就可以在“控制中心”把除等宽以外的字体都改为AR PL New Sung 9pt了(或者直接用fc-cache生成字体信息,但这样在控制中心不一定找得到新加的字体)。该字体是GBK集的,中英文字体都很锐利,英文字体也很不错,唯一的也是我认为致命的不足是它使用的是繁体式的简体字体──简体字看起来像繁体字一样。
2)如果仅是个人学习和研究之用,可以使用Microsoft的Tahoma及中易的simsun(均可在Windows的Fonts目录中找到)。在此基础上的美化在Linuxfans论坛的中文化与桌面美化板上有很多讨论,有自已制作/下载TTF文件,配置文件等实现美化。这里我仅仅介绍我自己用的最简单的方法:
我的想法是系统中肯定是按字符集来查找字体,有个最优先的英文字体,最优先的简体中文字体,最优先的其它字体,这样其实只要把你喜欢的字体设为最优先的就行了。的确,/etc/fonts/fonts.conf中的<alias>元素就是管这件事的。
①把Windows里的simsun.ttc拷到/usr/share/fonts/zh_CN/TrueType/下,更名为simsun.ttf(不改名也行,但似乎在非root用户中使用会有些问题);tahoma.ttf也拷过来。重启X。
②修改/etc/fonts/fonts.conf(修改前最好做个备份),在
<!--
Serif faces(以及Sans-serif faces)
-->
<alias>……</alias>中把<family>SimSun</family>这一行移到所以中文字体之前,如<family>AR PL SungtiL GB</family>这一行前面。
在
<!--
Provide required aliases for standard names
-->
<alias>
<family>serif(以及sans-serif、monospace)</family>
<prefer>……</prefer>里也这样做,这里移到<family>ZYSong18030</family>这一行前面。
③重启X,在“控制中心”的字体设置里把除等宽外所有的字体都设为Tamoha,9pt。
好了,够简单吧,这样已经可以达到很好的效果了。但是字体的粗体/斜体等还是没法用的,这个以后会再研究。其实我之前在FC2里装了一些字体美化包,如哈密瓜字体美化包,它也没管这个……
对于其它应用程序的字体的微调,这里就不赘述了。建议在Kedit之类的编辑器里,最好用等宽的字体,如Courier New(Windows下的UltraEdit就用这个)之类的,会比较工整一点。