|
X支援多种的字型及几乎无限多种变化的色彩,大多数的应用程式允许你指
定应用视窗中各个不同部份的颜色,而几乎所有的X程式均允许你指定你想要使
用的字型。
在X中的字型(fonts):
.有固定的宽度(像哑终端机的字元)或成比例的间隙。
.由本文字元(text characters) 或符号组成,或以上两者均有。
.具有多种的点尺寸(point size)。
.可以修改以适应特定的萤幕解析度(例如对於同一点尺寸的某一种字型,
你可能对75 dpi (dots-per-inch 每寸若干点) 的萤幕有一种版本,对
100 dpi 的萤幕有另一种版本)。
.有一种标准命名的传统。
.可以以全名存取,也可以用通用字元(wildcard)。
.储存在特定建构的目录树中,只要server在执行时,字型便可以加入或
移出。
在系统间进行字型的交换有一套标准的格式,并且有工具程式可以将这个
格式转换成你的server能了解的格式,工具程式也包含了列出可用字型的目录
、观察某一特定字型内容等功能。
本章先对字型作一简短的介绍,让你能尽快的使用它们,然後才转而详细
地解释字型的结构、格式、工具程式等,最後一节讨论色彩:如何设定和使用
它们。
13.1 字型初步
本节的目的是让你尽快地能使用字型,我们将告诉你如何找出有哪些字型
可用、指定你欲使用的字型名称、看字型的外观、如何在X应用程式中使用字型。
13.1.1 列出可用的字型
xlsfonts程式一行行的列出server上可用的字型,图13-1显示部份的
xlsfonts的输出,内容为MIT 版标准的字型。
┌——————————————————┐
│ p146 fig 13.1 │
│ │
│ 图13-1 典型的字型目录列表 │
└——————————————————┘
13.1.2 字型命名
有些字型的名称太长以致使用不便,但很幸运的,它们也不常被使用,并
且,X支援字型名称可使用通字元(wildcard):
? 对应任何一个字元
* 对应从(字元)长度为零至长度若干的字串
这和Unix shell传统的通用字元档案名称相同,使用通用字元可使你更容
易指定字型名称。
注意:如果你在shell 的命令列指定一个通用字元的字型名称,需要在名称前
後加上双引号 。
13.1.3 观察一个特定的字型
xfd (X font displayer 的缩写) 程式由引数(argument)得到字型的名
称之後,建立一个视窗并且在视窗中显示此名称之字元字型,例如:
xfd -fn "*symbol*-180-*"
将显示如图13-2的视窗。
┌——————————————————┐
│ p147 fig 13.2 │
│ │
│ 图13-2 字型的展示 │
└——————————————————┘
13.1.4 以X程式使用字型
大多数的X程式使用文字,并且允许你指定使用的字型,如何使用的详细
细节可能因不同的程式而异,如果有问题的话可以看指南页。但是几乎都是以
命令列中选项 -fn fontname 或 -font fontname 来指定字型名称,bitmap、
xclock、xterm、xload、xmb 和 xedit都是这样操作的。例如假设你是为了展
示的缘故,以很大的字型执行xterm ,你可以用下列命令列:
xterm -fn "*courier-bold-r-*-240-*"
注意:如果你给程式的指定对应到一种以上的字型,则server会随便在其中选
取一个,例如:如果你省略了上例中的 -r 的指定,则你会使用到意大
利斜体(italic)字型或反斜体(reverse oblique) 字型,和原来所指定
的罗马(roman) 字型的机会是一样的。
现在你应该有一些概念了,我们将从不同的观点详细地讨论。
13.2 字型如何命名
在X中,字型可以取成任何名称,但几乎所有的字型均依照它们的本质来
命名,这样的命名方式,名字是由几个不相关的部份组合而成,而我们在使用
应用程式时,光凭著字型名称便可以大略了解字型的内涵。
我们以一个字型名称为□例,逐一解释它的组件,组件之间是由短横线(-)
所分开的,而且可以包含空白,字型名称对字元大小写并不会区别,□例如下:
-adobe-times-bold-normal--12-120-75-75-p-67-iso8859-1
adobe :字型的制造厂商。
times :型态家族(type family) ,其它尚包含courier ,helvetica 和
new century schoolbook。
bold :粗体字,其它包含light (细)和medium(中等)。
r :字体倾斜的型态,r 是roman (罗马体),其它是 i(italic意
大利体),o (oblique 倾斜体)。
12 :字元的高度,单位为像素。
120 :字型的点尺寸(point-size),为点的10倍(120 意为12点,一点
约为1/72英□宽)。
75-75 :字型被设计在显示装置上的水平和垂直的解析度(每□若干点)。
p :字和字之间的间隙,p 是proportional(成比例的),相对的是
m (monospaced固定宽度)。
如果你对某一栏有特别的兴趣,在本版的说明文件档
$TOP/doc/fontnames/fname.txt
中,有对每一个组件完整的说明。
你通常比较有兴趣的项目为家族型态、字体粗细、何种斜体字以及字型大
小,除了指定这几项的值外,其它的项目不妨藉著通用字元的方式去指定。
13.2.1 通用字元和字型名称
在第13.1节中,我们曾经解释过通用字元的规则:星号(*)表示对应到
零或多个字元,问号(?)对应到一个任意的单一字元。
你可以随意的使用通用字元,当你的设定对应到一种以上的可用字型时,
server会随便挑一种字型来用,如果你的设定什麽字型也没对应到,通常你会
获得一行讯息,而server将会使用预设字型。
你可以对字型的点尺寸使用通用字元,而不是像素尺寸,因为在显示器上
一个给定点尺寸的字型对不同的解析度有不同的像素尺寸,所以用通用字元指
定点尺寸可以造成与装备无关的效果,上述的□例你可以如此设定:
*-times-bold-r-*-120-*
也就是说以-120-取代-12-
13.2.2 列出可用的字型 -- xlsfonts
xlsfonts列出在你server上可用的字型(如果你使用用命令列中-display
选项,便可列出其它server上可用的字型)。预设是列出所有的字型,但是就
如同Unix的ls命令一样,如果你加上限制,便只会列出合乎限制的项目,例如:
xlsfonts "*-times-*-180-*"
列出所有18点Times的字型。
原则上,xlsfonts试图在每行列印出尽量多的字型名称,但实际上,大部
份的字型名称都很长以致一次只能印一个名称,但是要小心,当字型名称含有
空白时,一行有数个字型名称常常容易混淆。
注意:许多的字型名称开头为一短横线(-) ,所以xlsfonts会误把此种状况当
成命令列的选项来解释以致发生错误,例如:
xlsfonts "-adobe-*"
会失败,你可以用选项-fn 加以区分,或者只要在设定之前加一个星号(*)
即可:
xlsfonts "*-adobe-*"
xlsfonts -fn "-adobe-*"
13.3 观察特定字型的内容 -- xfd
xfd 是一个”字型显示”的程式,它建立一个视窗,而後在视窗中将字型
的元素显示在长方格子中。视窗可能没有大到一次将字型中所有的字元显示出
来(尤其是你可能对它重定过大小),但你仍然可以存取它们:
向前移动:在xfd 视窗中碰触滑鼠右按钮,视窗的下一页将会出现。
向後移动:碰触滑鼠左按钮。
获取字元的资讯:在字元上碰触滑鼠中按钮,xfd 会给你
[1] [2] [3] 下一页
|