FreeBSD桌面系统中利用Fontconfig进行

2009-05-13 08:25:02来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


                FreeBSD桌面系统中利用Fontconfig
进行字体配置的运作原理

       
         http://www.chinaunix.net 作者:
杜比环绕声
  发表于:2007-05-30 18:44:36
       

发表评论


查看原文


BSD讨论区
】【
[url=javascript:window.close()]关闭[/url]

       
       
       
试析FreeBSD桌面系统中利用Fontconfig进行字体配置的运作原理(一)
杜比环绕声
概要:本文以KDE桌面环境为例,试析Fontconfig的运作机制
一、Fontconfig在桌面系统中的作用
KDE是类Unix系统中建立在X基础上的一个主流桌面环境,对用户来说,它提供了良好的图形界面和语言切换机制,用以满足来自不同国家、使用不
同语言的用户的使用需求,这种机制简称“国际化”。主要包括界面文字的翻译,多种语言字体的管理、显示的支持以及输入法等等。这其中系统层面字体的管理和
显示的支持直接关系到文字的显示效果,因此显得尤为重要。在KDE系统中,字体管理、显示的支持采用的是如下框架。
Fontconfig(字体配置)-------->Freetype(字库操作)-------------->xft(字体渲染)
Fontconfig : 管理系统安装的字体,根据应用程序的字体配置,match(匹配)一种字体,填充match字体的各种属性。
Freetype : 以Fontconfig匹配到的字体为参数,根据应用程序需要读取相应的字库。
xft: 对需要显示的语言文字进行渲染
二、X系统中字体的管理
作为KDE底层支持的X,它使用字体服务器(xfs)对安装的字体进行管理,也称之为“核心字库管理系统”,基本配置原理是xfs使用可维护的字体安装目录和fonts.dir文件对字体进行操作。
X为之提供了一些工具来完成管理操作。诸如 :
mkfontdir,mkfontscale 用来生成安装字体的 fonts.dir和fonts.scale。
xlsfonts 用来显示安装的字体。
xfd 用来显示指定字库的信息。
xset 用来管理字体服务器。
对于FreeBSD,在安装了xorg 7.2并且X server运行的情况下,字体安装目录可用 xset q来查询
shell>xset q
Font Path:
/usr/local/lib/X11/fonts/misc/,/usr/local/lib/X11/fonts/TTF/,
/usr/local/lib/X11/fonts/OTF,/usr/local/lib/X11/fonts/Type1/,
/usr/local/lib/X11/fonts/100dpi/,/usr/local/lib/X11/fonts/75dpi/,
/home/dbhrscom/.fonts
上面显示的是X系统安装时定义的字体目录。在这些目录中,都有利用mkfontdir生成的fonts.dir(对于true type 字体需
要使用mkfontscale 生成 fonts.scale,然后拷贝到fonts.dir中)。fonts.dir是个文本文件,里面保存的是所在目
录的字体信息。关于这些信息的具体含义,可以参见X的man手册,这里不再赘述。
如果准备把一个字体安装到X系统中,并且使用Xfs进行管理,大致需要以下过程:
1、建立一个目录,并且把字库文件拷贝到这个目录下
2、运行mkfontdir或者mkfontscale,生成安装字库的fonts.dir文件。
3、运行“mkfontdir -e 系统编码目录” 生成encodings.dir 文件(可选)
4、运行 “xset +fp 字体目录” 或者  “xset fp+ 字体目录”,把字体目录添加到xfs的字体目录列表中。需要注意的是当字体目录没有fonts.dir这个文件时,这种添加字体目录操作会失败。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:也许zero-copy并没有想象中的那么深奥

下一篇:FreeBSD vs. Linux vs. Windows 2000