这次我们来讲解如何调整各式各样的字型设定,如何安装新字体,和其他可以大大改善Xwindow字型的外观和可读性的方法。这是藉由调整XF86Config文件中的字型路径(FontPath),在startx或xdm加上Xserver命令列选项(commandlineoptions),加入新的字型,安装TrueType字型
服务器(fontserver)xfs,和使用KDesktopEnvironment1.1的
功能来调整许多应用
程序的字型设定,包含设定让非KDE应用程序的颜色和字型能够与KDE一致。
. q5 |- t9 @4 O XF86Config文件
! @3 ^ G& c4 z[color=#FFFFFF']
0 o* u/ t; l9 @9 K
1 g" J% ]' i2 h2 ~8 K 要想解决字型的问题,首先得看看XF86Config文件。(通常放在/etc/X11/
3 @* L" \9 Y; S/ T. g8 `+ R XF86Config)。这个文件中关于字型最重要的部分就是FontPath。在我们研究它之前,最好先检查X的其他设定。错误的屏幕设定比错误的字型设定更令人头痛。请确定您屏幕的更新频率(refreshrate)。
, f) Z9 W8 U( i# `. g* |# { 设定FontPath
1 C: Z% h+ W T/ ~6 k: `. }
用vi文字
编辑器编辑XF86Config,在档案的开头,应该会看到
类似下面的东西:
" v! v! H" r" Y# _" W[color=#FFFFFF']
/ A |+ {8 Z0 h! V. U1 k; q; ~2 K; q4 U( L4 _- w4 e
FontPath"unix/:7100"
/ ?& E) E/ I4 Q7 f& O. Z+ z FontPath"/usr/X11R6/lib/X11/fonts/TrueType"
$ Y. ~1 b$ W% y: u0 n' S4 X
FontPath"/usr/X11R6/lib/X11/fonts/75dpi/"
/ g7 B. M- |" W( x5 |# B+ m2 V
[color=#FFFFFF']
1 w) v! t3 y+ X# b e7 T7 v: N' \7 V+ I0 y2 `
FontPath"/usr/X11R6/lib/X11/fonts/100dpi/"
5 r8 y' I/ n: a2 @& T0 | FontPath告诉X到那里去找在屏幕上显示用的字型。顺序是很重要的,当一个X的应用程序向X要求使用一些字型,Xserver通常偏好使用正在用的字型。然后它去看看FontPath,使用最先看到能满足Xclient要求的字型。
7 c. G* h$ j& l! j/ m7 a. L. }
预设的FontPath通常将75dpi的字型放在100dpi的字型前面。若有一台高
分辨率的屏幕,这表示非常小的字。首先就是将75dpi和100dpi的FontPath对调。
3 i/ J, p" y; _ FontPath"/usr/X11R6/lib/X11/fonts/misc/"
& u7 A9 J. h8 z6 l
[color=#FFFFFF']
$ |6 e& l/ n, Z6 d! Y* Q( S
" S7 g3 D( b% |3 [
FontPath"/usr/X11R6/lib/X11/fonts/Type1/"
: X2 Y1 H0 f! N+ B
FontPath"/usr/X11R6/lib/X11/fonts/100dpi/"
! t5 X% z3 T0 g
FontPath"/usr/X11R6/lib/X11/fonts/75dpi/"
: B4 m$ x8 Y1 h ]
然后指出偏好使用不能缩放的点阵字。若曾经使用Netscape或是其他使用较大字型来显示标题的程序,将会发现这些字型呈现锯齿状的。这样很丑,需要修改。所以在misc,100dpi和75dpi的最后加上:unscaled。也可以同时使用能缩放和不能缩放的字,只要将不能缩放的字的FontPath放在前面,告诉X说若可能的话,尽量使用不能缩放的字。
* @' q% V% s9 w7 D$ g/ D1 [+ z
FontPath"/usr/X11R6/lib/X11/fonts/misc:unscaled"
& f5 P% ^" `7 `( [ FontPath"/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
* q/ y! J5 {7 l9 k7 v
FontPath"/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
' c8 R# g# K# l9 b: f6 r, C
[color=#FFFFFF']
$ S, K( \ P1 o0 v4 Z
( Z X* s1 }4 {! a8 l/ c FontPath"/usr/X11R6/lib/X11/fonts/Type1"
1 B, C5 j- i# N* r6 K0 i; i FontPath"/usr/X11R6/lib/X11/fonts/Speedo"
7 k; f7 Z2 \+ b! {1 i
FontPath"/usr/X11R6/lib/X11/fonts/misc"
. F) {4 P: T; J+ g# F& O% T* h FontPath"/usr/X11R6/lib/X11/fonts/100dpi"
! _- F& B& d; y' a$ m$ T" h FontPath"/usr/X11R6/lib/X11/fonts/75dpi"
: {1 X+ J( v6 @, [2 D
在做了这些改变后,重新启动X。
1 O8 G; e% {/ w, u+ T" M' K
& y7 u r, K& D4 r( A5 W
[color=#FFFFFF']
* l7 C2 M6 f) B5 u" r2 j
! c0 b/ r: o+ G8 }! I# m/ K
Xserver命令列选项
2 B1 O$ C" e- [: s2 |/ ]# { 下面一件要做的事是调整Xserver的命令列选项。可用-dpi来指定显示的分辨率是每英寸几点。现在很多的
系统使用高分辨率的
显示器,可能它们会要用100dpi。
6 `! ?& \* h0 {2 G) z[color=#FFFFFF']
$ i+ w* d$ g! k
' l5 `8 y# C. x V 在console下启动X,键入
1 e4 u. [- }+ k% y% n* }8 T4 Z+ V% j* \
startx-dpi100
% P6 ^% N8 q. C; E+ }+ W
若用xdm这种图形登录界面,需要编辑/usr/X11/lib/X11/xdm/Xservers文件。在里面有Xserver的命令列。我的文件里有下面这一行:
: m7 k2 I! q2 M$ \
:0local/usr/X11R6/bin/X-dpi100-gamma1.6
8 O# ?& {. g2 l" H2 f0 `2 N4 b[color=#FFFFFF']
( m* [# m& }( P; M$ t' n" Z }+ Z% M w7 B
TrueType字型& U3 f& u" q& ~) z8 E4 e8 T# f
; s8 ?* Q/ B9 n, Y1 l[color=#FFFFFF']
0 G1 Y7 `4 r c0 c5 }/ U3 e
1 A9 a6 F- B7 J" v
在
Windows里加上了对TrueType字型的支持。
Windows95和其他的
Windows都内含Arial、TimesNewRoman和CourierNew。约等于Helvetica、Times和Courier。TrueType字型是能缩放的,所以在放大时很好看,而它们也被好好地调整过,故在缩小的时候依然可读。
- N+ W, ]9 `. d1 K `9 o$ Y* j[color=#FFFFFF']
$ X+ Y( O& ?- ]- j3 `) `4 j
1 H" Y" q7 O( H7 l% }' K; b* e xfs
7 s! S1 q, {/ b( f$ |6 _ A xfs是一种字型服务器的选择,Xteam
Linux4.0默认的就是使用该字型服务器。xfs是基于FreeTypeFontlibrary,不只能处理TrueType和Type1字型,也可以对付原本的X字型。
: g+ Y7 a+ S H6 {0 ~2 F* \[color=#FFFFFF']
1 Y" N. |3 i% m! n
( h4 U; V7 `6 V+ d 安装
$ }- m1 b( O$ S# T[color=#FFFFFF']
5 E6 e+ U" @4 Y1 x; l# _ B
* n, q2 W/ n# c5 | 第一步是将TrueType字型加入Xteamlinux4.0里。su为超级用户,建一个目录来存放这些字型:mkdir/usr/share/fonts/ttfonts。
5 a% k0 N) Z' t, U
[color=#FFFFFF']
, I3 V* j$ R6 J5 z" J9 k
# h2 _; x! b7 S( L, `2 N
然后将字型放入这个目录里。您可以从Windows系统中拷贝过去cp/mnt/win/path_to_fonts/*ttfusr/share/fonts/ttfonts/或是从
Microsoft直接
下载。
% K1 b0 n# S' L0 K 这些字型是自解压缩的ZIP文件。也可按如下方法安装:
( ^1 f1 B ~4 R unzip
. z# [" O8 E6 Z 注意字型的名文件必须小写。一个快速又容易的转换方法是将它们拷贝到一个DOS(FAT16)档案系统中,然后再拷贝回来。DOS不处理大写。另一个方法是先进入到存放字型的目录下,然后键入:
0 j/ u8 d, n7 u
[color=#FFFFFF']
* [6 N9 l8 F" `# v- w u! @
y! ]/ n' r) O+ @) k& y2 j7 g ls*TTF│whilereadf
4 f- F( H8 G& M- j do
M! q: b- u" `: t
[-f""]%26;amp;%26;amp;%26;amp;%26;amp;mv-f"""`echo""│trA-Za-z`"
* `" s6 X4 P- a done
+ i" Y, e( r6 d, r J4 ^& x
[color=#FFFFFF']
2 n. |* d2 Z1 b/ P
}! w6 R* u' z. B3 a 注意标点符号%26;#8212;%26;#8212;那些“backquotes”很重要。当TrueType字型正确安装后,以超级用户执行:
# y9 z1 X. h1 b ttmkfdir-ofonts.scale
: P7 R; v6 i5 B% ]6 K8 z1 w+ }
[color=#FFFFFF']
1 Y+ s/ {- k& O, e2 H, Y- ^8 ~
+ q+ |9 V3 t8 K! O; ] mkfontdir
6 b' C0 _% @5 ?. Y9 ]
5 O V- O `! @3 F* b5 ~当字型目录下的内容改变后,重新执行上面的命令。接下来,编辑你的xfs字型设定文件/etc/X11/fs/config在字型表中加入你的TrueType字型:
; U; O" g, X* L2 y3 n1 h) o[color=#FFFFFF']
% G$ r" |( B' g& q+ j
- D7 ?( z: s2 Z7 U! u4 Q% w$ z catalogue=
2 |7 z/ N4 k* b3 R( p2 F2 V /usr/X11R6/lib/X11/fonts/misc:unscaled,
+ x6 H' Z- d1 y/ T0 l& \
/usr/X11R6/lib/X11/fonts/100dpi:unscaled,
' k+ z( B) n! [4 K* ~- j[color=#FFFFFF']
& Y+ o; @, H& J7 z3 J" `2 F( C2 P, m7 Z. c/ y( k2 j( R' C8 y* b
/usr/X11R6/lib/X11/fonts/75dpi:unscaled,
( S; h6 m' y! L2 M* Z: G+ p /usr/X11R6/lib/X11/fonts/misc,
: T( S- q! f) s. P z# N[color=#FFFFFF']
5 a$ [5 J5 b: D$ p
4 p9 \7 A/ S8 J9 o
/usr/X11R6/lib/X11/fonts/Type1,
- y' q/ A- `- y1 R g8 j
/usr/X11R6/lib/X11/fonts/Speedo,
. k [( w# X6 d/ o
/usr/share/fonts/default/Type1,
, ~4 @8 z- I- P* \
/usr/share/fonts/ttfonts,
( Y; R7 g; Q' q. |
/usr/X11R6/lib/X11/fonts/100dpi,
6 n5 `: |. ~% f3 K /usr/X11R6/lib/X11/fonts/75dpi
2 F+ E' `# y- g 也可以用“chkfontpath--add”命令来加入字型。当使用时,按如下方法更改字型的预设点数。
' [4 I. S! {9 b( q" |
default-point-size=140
- Z% B! i9 K% s8 R 这使我从预设的12点字变为14点字。有些X的应用程序使用这个,有些则不。接下来,确定XF86Config文件中的FontPath是:
9 _9 l6 B: G2 Y* K( }4 ^* S' x( Q& v FontPath"unix/:-1"
' ]& b6 Q. J9 W6 A: g5 i/ S- `
注意“unix/:7100”也可以做到,但是在刚出来时无法使用。将所有的FontPath用“#”让它变成注解,反正你也不用它们了。xfs的packages应该和其他XFree的packages一起安装了。要确定它是预设的服务,可以使用“ntsysv”或是chkconfig--addxfs
N8 S$ _: w9 P# |[color=#FFFFFF']
1 E. Y& F# b4 V5 @, \
+ g) C9 i" _ {3 z 现在xfs在您每一次开机的时候都会启动。重新启动X来读入新的FontPath。用下面的方式启动/重新启动xfs
3 A Q% a% V+ ^6 D
/etc/rc.d/init.d/xfsrestart
! _( D. i% X. b1 m6 T
这样Xteamlinux4.0就有个可以使用的字型服务器了,而且它已经启动了,可以检查哪些字型正在被使用:
/ j) u* L# x$ Y; p( I) {
xlsfonts│less