当前位置:  首页  >  服务器技术  >  Linux/unix  >  Linux入门

Linux中用xft方式增加字库

Linux中用xft方式增加字库--Linux通用技术-Linux技术与应用信息,下面是详情阅读。
  我已不知道在2008年春节这七天间是第多少次重装我的红旗Llinux了(先是5.0,再6.0,再至6.0sp1,最后返加6.0),单是RF6.0就被我实验崩溃了N次了。不过折腾来折腾去,总还是有些心得的。以后我会慢慢记之。

  中文Linux使用时都牵扯到一个最显眼的问题,就是字体的美化,西文就没太多必要看这篇文章了。中文字体的美化,大家常用的微软W indows系统做的非常好了,所以很多从Windows转向Linux的用户都对Linux本身的中文字体很是头痛,优其是在Windows下写好的办公文档,在Linux下用OpenOffice打开后,真是惨不忍睹,天哪,那还是我已写好的办公文档吗?呵。。呵。。。别急,那是因为有很多字体在Linux下都没有的缘故。

  言规正传,下面我们开讲如何将Windows常用的中文字体转移到Linux下。

  在 Linux的X window下的字体设置是比较复杂的,这是因为在X windows下有两套字体系统,分别是核心字体X11字体系统与xft字体系统。核心 X11字体系统是应用最广泛的一套字体系统,所有的X系统都支持。Xft字体系统是一个新的字体技术,只能用在基于XFree86系统的X系统上,但该套字体系统配置简单,容易使用,将是未来发展的方向。红旗Linux上两种字体系统都用。下面我们就先讲讲如何用xft来把微软的TrueType字库移植到Linux下,不再使你的办公文档惨不忍睹。

  要只是说操作,很简单就两步:

  1)先将微软Windows系统下的英文TrueType字体(.ttf或.ttc字体文件)拷贝到RF-Linux下的/usr/share/fonts/en/TrueType目录下,将微软Windows系统下的中文TrueType字体(如simsun.ttc、simkai.ttf、simhei.ttf及simfang.ttf等)拷贝到/usr/share/fonts/zh_CN/TrueType目录下。

  2)在shell终端下执行fc-cache -fv命令,然后用Ctrl+Alt+BackSpace组合键快速重启X Windows即可。

  经过上述两个步骤,在OpenOffice里已能够使你的办公文档很好的展现了。在系统的其他应用程序里也能够正常使用微软Windows的字体了。其中的原理我就引用一位网友写的字体配置片断,因为他说的已经很好了。

  以下是该网友文章的节选:

  Xft是一个library,它没有自已的配置机制,它依靠fontconfig库来配置和定制字体,Xft负责字体的显示。也就是说, fontconfig是一种让X系统可以找到某种字体的库,而Xft是负责在X系统中把fontconfig库找到的字体如何显示出来的库。所以讨论 Xft字体配置其实就是讨论fontconfig。fontconfig包含在XFree86发布版中。

  fontconfig的作用:自动搜索字体路径,发现新拷贝的字体;当需显示的字体不存在时,会自动选择其它字体代替显示。这也就是我们在美化字体时为什么要调整字体的排列顺序的原因;配合Xft等X系统的渲染引擎,实现质量的字体输出。

  fontconfig 的配置文件有三个,一个是系统级的配置文件,位于/etc/fonts/fonts.conf,该目录下还有一个 local.conf,一般我们只修改local.conf文件,fonts.conf一般不建议去修改,不过fontconfig2.3以上版本已经取消掉了local.conf,系统级的配置全部是fonts.conf文件,并且2.3版的fontconfig已经进入Sarge。第三个配置文件是用户主目录下的 ~/.fonts.conf,它是用户级的字体配置文件,只对当前用户有效。这三个文件的格式是一样的,都是一个XML格式的文件。该XML文件的语法规则在fonts.dtd里定义。详细的配置介绍请参考中国Linux公社中的“Linux高质量字体研究”论坛。

  在Xft字体系统中安装新的字体是很简单的,只需把字体文件拷贝到fonts.conf中指定的字体文件目录即可,fontconfig会自动感知新字体。默认的字体目录有四个,分别是:

  /usr/share/fonts
  /usr/X11R6/lib/X11/fonts/Type1
  /usr/local/share/fonts
  ~/.fonts

  当然也能增加其他目录,只要手动修改/etc/X11/fs/config文件,给其中catalogue那一行最后加上你的字体路径就可以了。

  把新字体文件拷贝到字体目录后,我们就可用fc-list命令列出新安装的字体,如果没有,可用fc-cache命令手动更新系统字体配置。这样,再运行 fc-list就应该可以看到新安装的字体了。使用Xft字体系统是不用配置/etc/X11/XF86config-4的,也不用重启X服务器使配置生效。Xft字体系统比起传统的X11核心字体系统来说真的是方便很多。所以它是未来的发展方向。
吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有