转 http://forum.ubuntu.org.cn/viewtopic.php?t=18638
文泉驿字体做得确实很漂亮,而且还是开源的,因此对于系统字体的美化我选择了文泉驿。可是有时在和其他人 交流文档时又不得不用MS的字体。在机器上装了MS字体之后,字体平滑问题一直很令我头痛,尤其在看一些网页时,整个网页一片模糊,如新华网。关闭了平滑 之后,当字很小时又是一堆在一处,而且英文字体很难看。在Ubuntu 5.10时这个问题基本上得到了解决,而到了6.06使用以前的设置方法已经不管用了,参考了论坛、Wiki以及网上的一些文章,用了半天时间终于解决了 所有问题。
预期目标:
1、使用文泉驿字体进行系统美化
2、安装MS的宋体(SimSun),宋体-18030(SimSun-18030),黑体(SimHei),楷体_GB2312(KaiTi_2312),仿宋_GB2312(FangSong_GB2312)
3、使用网页设定的字体浏览网页,如新华网一般在页面上规定宋体和楷体
4、对特定范围字体关闭AA
5、解决Firefox中文泉驿字体过粗问题
实现步骤:
1、安装文泉驿字体
新装的系统默认是没有安装make的,可以通过sudo apt-get install make来安装
引用: cd ~
mkdir tmp
cd tmp
wget http://ftp.ubuntu.org.cn/wqy/wqy-bitmapfont-bdf-nightly_build.tar.gz
tar zxvf wqy-bitmapfont-bdf-nightly_build.tar.gz
cd wqy-bitmapfont
sudo apt-get install bdftopcf
make
sudo cp *.pcf /usr/share/X11/fonts/misc/
然后进行配置,使系统支持点阵字体
sudo gedit /etc/fonts/conf.d/50-xfonts-wqy.conf

把下面的代码粘贴进去,保存退出
引用:


WenQuanYi Bitmap Song



2、安装MS字体
cd /usr/share/fonts
sudo mkdir zh_CN
然后将MS的字体文件(simsun.ttc,SimSun18030.ttc,simhei.ttf,simkai.ttf,simfang.ttf)复制到zh_CN目录下,然后
cd zh_CN
sudo mkfontscale
sudo mkfontdir
sudo fc-cache

3、修改language-selector.conf文件(language-selector所指向的文件)
cd /usr/share/language-selector/fontconfig
sudo cp zh_CN zh_CN_backup
sudo gedit /etc/fonts/language-selector.conf
使用下面的代码替换掉里面的全部内容
引用:

serif

Bitstream Vera Serif
DejaVu Serif
WenQuanYi Bitmap Song
SimSun
AR PL ShanHeiSun Uni
AR PL ZenKai Uni



sans-serif

Bitstream Vera Sans
DejaVu Sans
WenQuanYi Bitmap Song
SimSun
AR PL ShanHeiSun Uni
AR PL ZenKai Uni



monospace

Bitstream Vera Sans Mono
DejaVu Sans Mono
SimSun
AR PL ShanHeiSun Uni
WenQuanYi Bitmap Song
AR PL ZenKai Uni




Song
Sun
Kai
Ming



100


180


true




Song
Sun
Kai
Ming
宋体
宋体-18030
黑体
新宋体
新宋体-18030
楷体_GB2312
仿宋_GB2312
隶体
SimSun
SimSun-18030
SimHei
NSimSun
NSimSun-18030
KaiTi_GB2312
FangSong_GB2312
LiSu


false


0


true


false


true


12


24


false



language-selector.conf前一部分为字体渲染顺序,这里把文泉驿字体提到了第二位,优先于原来的ShanHeiSun。中间 那部分对字体进行加粗,由于文泉驿字体已经含粗体,再加粗会出现过粗问题,因此增加了一个条件,即仅在字体中不含粗体时加粗。后一部分设置字体属性,这里 将列表中的字体,包括宋体等设为了在12px~24px之间关闭AA(即平滑效果),超过这个范围开启AA,使得屏幕上的字体更漂亮。需要注意的是,如果 系统中不存在这其中的任一个字体,会使整个文件失效,系统默认采用fonts.conf进行配置。

按照上面的方法,即便是Bitstream和DejaVu排在前面,会令所有字体都使用文泉驿,包括中文和英文。如果想使用SimSun(微软的 宋体)进行美化时,只要将SimSun放到中文字体的前面即可。不过这个时候所有英文字体会出现破碎,很难看。可以将下面的代码插入 到前面,使得英文字体使用DejaVu。
代码:

sans-serif


SimSun


DejaVu Sans




sans-serif


DejaVu Sans
SimSun




DejaVu Sans


SimSun





serif


SimSun


DejaVu Serif




serif


DejaVu Serif
SimSun




DejaVu Serif


SimSun





monospace


SimSun


DejaVu Sans Mono




monospace


DejaVu Sans Mono
SimSun




DejaVu Sans Mono


SimSun


当然,跟据个人口味,如果偏好Bitstream的字体,只需把这段代码中的DejaVu全都替换成Bitstream Vera就可以了。当然,将这一部分中的英文字体都替换成Times New Roman(要先安装这个字体才行),就真的成了M$的了,个人不喜欢。
现在感觉很不错,充分享受Ubuntu!


已知问题,本打算仅通过修改配置文件的方式来进行美化,结果发现了一些问题:
1、使用文泉驿字体进行美化时,evince内无法显示中文。
解决办法:可以用Adobe Reader来阅读pdf文档
2、使用Simsun进行美化后,加粗英文字体会出现破碎现象。使用文中的英文字体美化之后,会在Openoffice中无法更改字体,并且evince无法显示中文。
解决办法,不使用英文字体美化部分的方法,而是通过系统首选项中的“字体”把所有的字体项都设置为一个英文的字体,比如DejaVu Sans。
除此之外,还可以使用其它字体进行美化,有可能解决上述问题,如雅黑。