2.1.3. 配置应用程序
Because most current applications use the core fonts system by default, it is necessary to explicitly configure them to use Xft. How this is done depends on the application.
由于许多应用程序缺省是使用核心字体系统的,所以要使用Xft,就必须进行配置。方法根据程序不同而有所区别。
在XFree86中使用这种字体要求一个严格的目录结构,主目录必须是CID(缺省在`/usr/X11R6/lib/X11/fonts/CID'),但也可以放在任何地方,下面应该为每一个CID集合建立一个子目录,下面有三个子目录,分别是CIDFont,CMap和AFM(the font metric files)、CFM(初始情况下是空的)。如下所示:
如果还是有安装问题,可以看一下X server的log文件,看模块是否被正确载入了。模块如下:
"bitmap": bitmap fonts (`*.bdf', `*.pcf' and `*.snf');
"freetype": TrueType fonts (`*.ttf' and `*.ttc'), OpenType fonts (`*.otf' and `*.otc') and Type 1 fonts (`*.pfa' and `*.pfb');
"type1": alternate Type 1 backend (`*.pfa' and `*.pfb') and CIDFont backend;
"xtt": alternate TrueType backend (`*.ttf' and `*.ttc');
"speedo": Bitstream Speedo fonts (`*.spd').
3. XFree86中包含的字体
3.1. 标准 bitmap 字体
X11的标准(样本实现,SI)带有大量的bitmap字体,包括fixed族,Courier、Times、Helvetica及Lucida族的bitmap版,它们都以ISO 8859-1(ISO Latin Western-European)编码。
In XFree86, a number of these fonts are provided in Unicode-encoded font files instead. At build time, these fonts are split into font files encoded according to legacy encodings, a process which allows us to provide the standard fonts in a number of regional encodings with no duplication of work.
在XFree86中,这些字体中不少以Unicode编码,在创建时,这些字体可以被分成其他编码的字体文件,这样就让我们得以使用一些 地区编码的 标准字体,而不用再去做重复性的工作。如字体文件
/usr/X11R6/lib/X11/fonts/misc/6x13.bdf
with XLFD
-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
iso10646-1: Unicode;
iso8859-1: ISO Latin-1 (Western Europe);
iso8859-2: ISO Latin-2 (Eastern Europe);
iso8859-3: ISO Latin-3 (Southern Europe);
iso8859-4: ISO Latin-4 (Northern Europe);
iso8859-5: ISO Cyrillic;
iso8859-6: ISO Arabic;
iso8859-7: ISO Greek;
iso8859-8: ISO Hebrew;
iso8859-9: ISO Latin-5 (Turkish);
iso8859-10: ISO Latin-6 (Nordic);
iso8859-15: ISO Latin-9, or Latin-0 (Revised Western-European);
koi8-r: KOI8 Russian;
koi8-u: KOI8 Ukrainian (see RFC 2319);
koi8-ru: KOI8 Russian/Ukrainian;
koi8-uni: KOI8 ``Unified'' (Russian, Ukrainian, and Byelorussian);
koi8-e: KOI8 ``European,'' ISO-IR-111, or ECMA-Cyrillic;
microsoft-symbol and apple-roman: 只在TrueType字体中有用。
5. 附录:背景及术语
5.1. 字符和字型
击键和显示/打印出来的字型是不同的,有时候一对一,有时候不是,可能会有连字,如阿拉伯字。
从击键到字型有两步,先是从击键到字符,再从字符到字型。字符就是存储在计算机里的文件中的东西,关于它也有许多标准。
在代码和字符之间有一个映射关系,计算机必须知道哪个代码是哪个字符,如 US-ASCII, ISO 8859-1, KOI8-R, and JIS X 0208(1990)等都是编码。
字符集通常是8位编码,更早的有6位的。对象形文字来说,一般得用16位来编码。
5.2. 字体文件,字体和XLFD
传统上,印刷工叫它们字形和铅板。字形就是某种专门设计的字体,如 Times Italic 。而铅板就是一个用融化的铅铸出来的给定尺寸字形块。
数字字体存在字体文件里,其中存储着生成某种字形线条的信息。使用它的程序可以任意顺序读取其中的字形信息。
字体中还可以包含 位图 数据,这就是bitmap字体。它还可以包含数学描述,这就是可变形字体,常见的有Type 1(有时也叫ATM字体或PS字体)、TrueType和Speedo。
字形信息又必须有一种索引方法,Type1里一般是字形的名字,而TrueType里一般是一种特定的索引机制,比如Unicode。
X11核心字体系统使用字体文件中的数据来生成字体实例,它就是一系列特定尺寸字形的集合,并用一种给定的编码进行索引。
X11核心字体实例通常用一种XLFD来指定,即 X逻辑字体描述(X Logical Font Description),它以一个'-'开头,共有14个由'-'分开的区域,如: