在字体出现的样子不是你所预期的样子(通常是在更改了系统默认的显示字体以后)的时候,就需要通过修改字体渲染的顺序来解决这个问题

最近需要查看部分pdf文件,但在ubuntu下显示为乱码,参考以下技巧,问题解决:

ubuntu下pdf中文乱码的解决:sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional

但中文乱码的问题解决后中文字体变得不美观。在我的Ubuntu Feisty上面,虽然pdf中的中文不再是乱码了,可是我原先设置好的苹果黑体中文显示,全变成了源自台湾的开源字体了,美观大打折扣。

修改字体的渲染顺序,就是让系统以你指定的顺序优先选择字体来显示。在我这个例子中,只要把STHei黑体在字体设置文件中放在新加入的字体之前就可以了。

在ubuntu feisty中,字体设置文件有了很大的变化。(可参阅《Ubuntu Feisty Fawn中文字体配置的变化》),具体到我这里的例子,需要修改/etc/fonts/conf.avail/下的40-generic.conf和65-nonlatin.conf这两个文件。

打开这两个文件,其中<family>….</family>指的就是一种字体。整个字体设置包含了三类字体,一种是衬线字体serif,第二种是非衬线字体sans-serif (各种差别请参阅 http://zh.wikipedia.org/wiki/衬线体 需要代理访问)第三种是终端字体Mono。每一类中字体渲染的顺序即从上到下,我这里只需要把我需要的字体STHei放到AR PL KairiM GB和AR PL KaitiM Big5这两种中文字体前面就行了。注意STHei是一种sans serif字体,只需修改sans serif部分即可。如果还要修改终端的字体显示,再修改Mono段中的顺序即可,不过建议使用适合终端的中文Mono字体,如YuanTi Mono。

保存文件重启一下,就看到系统界面上出现的又是以前熟悉的字体了。

参考/推荐阅读:

好久没有写ubuntu的东西了,原因有二,一是遇到什么问题Google基本上都可以解决,没必要都写出来。二是在我这里用的两个ubuntu,一个5.10,一个7.04都表现得非常好,平常没有任何问题。完全摆脱了使用Windows地狱一般的日子。


评论

该日志第一篇评论

发表评论

评论也有版权!