汉化你的RedHat全攻略(2)-TrueType字体的使用
, ~; |' n0 Y) x0 g' V
2006-06-01
1 [% H. q! w! |7 w
* U; f4 O$ d" i6 k! v4 U
% o+ G; U* `) Y+ n6 C5 n& _! c
前言:
8 @ T" f' c' S9 F/ K
, S; g3 {; h4 c+ u+ T7 h在上一篇文章当中,我向大家介绍了如何安装中文
环境和输入法,不知道大家留意到没有,Gnome的桌面字体是非常难看的。想个办法让他好看一点吧。最好的办法当然是让
Redhat接受TrueType字体。
+ M4 y8 }' _; ~( X
: q# [+ ~8 j) K9 b
如果你使用的不是Redhat7.0的话,很不幸,他们所附带的Xf86对TrueType字体的支持并不是很好,甚至可以用非常的差来形容。所以,确定你的Xfree86版本是4.0以上版本是非常必要的。(RH6.2的Xfree86是3.3.6版本)
& t5 U8 z- l" M# `/ k+ i* y
* y- x0 J" }& z! T4 r
4 Q L4 {3 o7 E/ |2 b
注:网上有文章介绍如何让Xfree3.3.6支持TrueType,我
测试过了,好像并不怎么行,小弟不才,请高手指点!!
" z/ x5 G" s2 k: v: l
2 i8 m% M( Y6 ]) J% R8 o* O7 N" Z
" E$ c( i. w5 O一.XFree86
5 p0 G( _! R' x% N7 M$ n
+ u6 e6 q* @4 w2 N. Q
( g! U+ u- b, T# w- D1-1确定Xfree86的版本
; z# e' g3 E% Q1 k" |0 b
: I2 O& p: [2 Y1 n% F如果你使用的是Redhat7.0以下的版本,你需要升级你的Xfree86.
" o2 E. @' ^$ K C8 i
# w+ {# @9 d, Z) P* b
2 p/ v2 e& ^! \9 V' P1-2获得Xfee864.01
& k" W. U! ?+ o a, D7 q) [
* m! H3 s" w+ y) e% e( F
下载下面这些
软件包(fromxree86.org)
9 U! E6 i D8 ~1 g
$ D+ z1 Y: ]/ U1 W, @
: w8 Z# I% d& D3 P# m' aXlib.tgz
, m7 ^/ x% X; ^% t) {, a: x* j' O3 h l( O a
Xetc.tgz
( M- Q6 r k# l% l( i
& s9 z7 P/ g9 X5 S% z; UXdoc.tgz
- n \: F! ^# U" ]4 Z' z5 }9 ]7 q) I; k5 C
Xf100.tgz
6 C% z7 o/ Z* J! ~& d- \
# Q. Q, @2 W1 y$ sXfcyr.tgz
4 E% {+ G# T( y7 t* Z
/ `7 h3 S: ]7 t1 J0 m5 `Xfenc.tgz
6 E# |2 s6 h7 u& E# M8 d! {- x
3 Q( v: O3 H2 v3 i a: ^ f% BXflat2.tgz
/ X* \) C6 i- D1 ]; p1 r# i; G. f6 X/ j" |9 F7 c
Xfnon.tgz
5 ]1 W E0 U" l+ o1 A( |+ j
- ~1 y( l+ ?+ s5 i) ^; @" J) yXfnts.tgz
# z: m, X' R& H% h3 Y2 x/ S
5 |1 O3 Y: o* P) g- _
Xfscl.tgz
5 V. M+ J- c- T* P5 {* n$ V
2 J& V4 P& F. n. Z5 M4 A
Xfsrv.tgz
! d; M0 X6 B' Q2 r$ O! |0 q/ b6 Y
; a, e* k& C' c! g& u. P2 Fextract
( K* H7 L2 V, H8 @" e) v" f9 f) v
- _/ i6 X; j/ i. f" _8 x- [Xinstall.sh
+ |$ b' v9 }7 W7 i6 v' x1 ]( q
F8 g' e1 ~4 RXinstall.bin
( C! [, S& E% X
' a8 G* A/ x0 n t& Z; s# D# x- \Xjdoc.tgz
2 u# O9 |" x6 e5 {4 q6 ^+ W
/ b0 f8 X. a1 h$ C& V) _5 I
Xhtml.tgz
3 z# o! ?0 Y1 Y2 Y# F2 ]
! D0 N: u- z! {0 M- a6 c3 _( q0 }Xman.tgz
& q& ?/ ~9 |7 {7 a5 P
$ P# o: F% M0 x: w+ cXnest.tgz
. f, O5 t: Q! ?/ Y3 X( }& q
. }1 R; F; e6 w
Xprog.tgz
# F6 A4 ~" Y6 V4 P( d
! r) Y- ^* e% o; h
Xmod.tgz
@" `. l6 P; b
) l7 w+ v) X6 P$ Q4 n; TXprt.tgz
) S% d2 N% n- z$ R9 [- \2 M I9 h
# Z2 x) e/ Q8 f! YXps.tgz
; o" W' [3 w4 K- u: f! w# j$ G, M# G9 a* \
Xvar.tgz
* T/ K1 o! c& g8 V. B( l) ?. _8 x5 N$ P! X; U7 g
Xvfb.tgz
* L5 Q) ~. C* }! Z! D' ]/ h' Z1 X4 l( Q: }: B8 X
Xxserv.tgz
) N) K9 Z: r# c) d" U
4 X+ K$ o- C6 L' [* H+ F: i% J3 S! Q" x4 T* j
总共大概是20M,一个多小时可以下载完毕!
% d% C5 g# W9 @$ w# ~
. G7 I: e, X4 N0 U$ x
$ [# L) ^% J( _( Q, d& P* Y1-3 升级Xfree86
5 ~7 V9 T+ W0 f: q% [2 x" W2 X! f
( D. ]9 e8 T- g; ]+ E; K. x+ V其实Xfree86的升级是超级简单,但是在升级以前请备份下面的两个文件:
: ~" g q: C- E- H
# Y x0 j' W& q$ U4 ~3 V+ j A$ }. n7 t% }7 w" o% ]" S
/etc/X11/xinitrc/Xclients--将来可以用他成为启动X的预读文件
' S! U3 e7 L- Z4 E$ u4 ^
& K- H0 M/ {4 t0 `/usr/X11R6/bin/startx--新的startx好像不会读取gnome的gtk资源文件.
8 n0 ?5 z. c. K0 w# J1 h
% K1 U e5 v& ?5 m' n) ^6 u
8 V; R+ ^5 K- u$ F7 _! Y& ^* [9 n到新的Xree86目录下面
" p( Q* Q5 `" d* L* u g7 G H
, w" S" o* n* i% [
, Z0 k1 Z# @) H. M3 j./Xinstall.sh--安装XFree86
: l1 O/ [$ W* _7 K# w) X" Y
: y8 l$ d1 O- o ?9 X然后一路[y]下去就可以了.
/ A3 L+ T9 c& d" _
# Y8 ~" [" G$ t" D
: b- i" v* h N3 a
然后,你就得用xf86config之类的命令来配置XF86Config文件.详细的方法不说了,请参考其他文章.
, r1 F- W+ c: b/ g# C7 I- d# t6 d" ^$ j! o7 ]
5 S. n0 K5 ?: d! y
然后:
' ?4 N2 G2 l/ E @. Q
" Z% S/ d4 N+ H+ Scpstartx/usr/X11R6/bin/startx--用旧的startx覆盖新的.
, h4 c$ o7 J b* Q" Y: P7 u% i, Q6 A4 ^' k, {& s( k F1 w1 T
cpXclients/etc/X11/xinitrc/xinitrc--startx会读取这个文件,选用给定的桌面.(一般是gnome)
$ g" _. |8 _2 v8 g/ k4 a1 E* a2 V) s0 S/ x6 T
+ Q0 |1 n8 O! B9 }7 P修改/etc/xinitrc,注释掉文件最后这些
4 {' M- D: _! ~
8 N! L ?7 u) x6 o
xclock-geometry100x100-5+5%26
P6 A+ _3 ?$ G+ t; t3 w% G, V
4 O6 d7 u0 R1 h0 ?! V8 T
xterm-geometry80x50-50+150%26
" y' \: n0 P m% M$ z( }
, o, }2 f( L. C
if[-f/usr/bin/netscape-a-f/usr/doc/HTML/index.html];thennetscape/usr/doc/HTML/index.html%26
/ g- j j1 ^9 H. d! H9 ~
^2 R# H$ j2 v; S: [0 B0 x
fi
' l! z9 H7 Z0 ?0 r; |% E) W: n
0 m9 u) i: c. X& H1 F, v3 R' j
if[-f/usr/X11R6/bin/fvwm];then
: T) V4 R3 {" r1 v* z" g7 N) ?. F9 E
5 u9 t. M. ^9 i& P4 ~
execfvwm
1 w7 b- b9 T) ?
* \$ f5 S- O5 h( e4 N8 Selseexectwm
4 {! x z- c. t2 i7 Q3 Y# ]( P
5 e! u! I- ~, B1 f* Z( Tfi
; |+ T! D( h; K# i
. S' W2 W/ [$ V8 w(不同版本的RH可能会用一些不一样)
+ t {5 J* B" J2 O* P. y
! K! l6 t7 l% J2 n& S% U% O' G
( r* G+ u# E% | q5 ~* s* n2 e如果一切顺利,startx后会进入gnome环境!
5 f3 e& s3 w# r/ ]/ j
' M( b& d. l/ L9 m/ O9 {5 b
u+ {0 A- K7 O2 V7 e+ Q# n二 字体
0 p/ m$ t0 S) F: ?5 M- O3 ]) V7 G, ~, _2 L; m; Z
. o" N+ ?/ x! U1 D U! Y2-1 xfs
$ `$ C. @( ~8 D4 P5 F
5 z3 E: Y( v8 E* r2 q9 R d. B" O+ b8 I/ k( i/ @* j, o* w
新的xfree86默认是不使用xfs,如果是想使用TrueType,我也不推荐使用xfs.所以 setup-%26gt;systemservice-%26gt;关闭xfs
/ K; y- L/ p- d7 X5 c/ J+ x' s Y% g' k/ x6 W; q& [
7 q1 l! B& q* i" [& V3 T2-2 得到TrueType字体
# b! w/ X! \8 ?" z" M$ K9 W$ v
2 ~5 D% y4 ]9 S# i+ l, S/ G8 z/ ^" p" Z: u. ~" q* l3 t
mkdir/usr/X11R6/lib/X11/fonts/trueType--建立TrueType的存放目录
7 u* i8 P0 f" o9 J- A0 z; Q' Z" v5 T" l p) l
cp/windows/fonts/simsun.ttf/usr/X11R6/lib/X11/fonts/TrueType--将你win98下的simsun字体复制到
Linux下.
1 a, H- n2 q0 j! }
; [& K9 x. \8 J' J0 P! v; L1 p: j T9 u6 _/ A3 G' p
cd/usr/X11R6/lib/X11/fonts/TrueType
- j. E% e9 q' a# m
% a, ?8 @; P& [9 S9 W+ U" H/ y `# wttmkfdir%26gt;fonts.dir--生成fonts.dir
- m* s: `% j6 h
5 S( \% v" d7 ?! a* W" G6 o0 u t+ D
r* Z8 A4 `! c. O! _ ^我使用的
Windows98是SE版本,将生成的fonts.dir改成了下面的样子.
4 G5 Z$ W1 t( G& g& ^& a
9 G' A5 d% T" _: ?+ a" l5 j! l, Q/ l3 i3 ]% E
3
" |1 H& r2 S d6 z
! t0 |& q5 r: N* Esimsun.ttf-misc-SimSun-medium-r-normal--0-0-0-0-p-0-ascii-0simsun.ttf-misc-SimSun-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0simsun.ttf-misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-1
/ |6 r5 {* W7 C) G
& S0 ?6 c! `& ?# H
. @( K! _! P# T* O3 \8 |5 u1 M生成fonts.scale:catfonts.dir%26gt;fonts.scale
* l1 b" y7 R/ I/ a: H; _9 g9 ~
/ A: e7 T' t! Y2 b4 M0 ^
- z2 y5 h8 o& u% [( [( m' d
2-3 让XFree86能够解析TrueType
1 V9 e3 o; K; d. X
+ D2 K. [: E5 w修改/etc/X11/XF86Config,找到解析Fonts的地方,由于FreeType和xtt解析不能够共存,所以我们关闭FreeType解析,打开xtt解析。
! p0 Y' @5 e! j
3 {, B* n Y% Q3 K. }
9 a% P2 c8 D; B* {8 J
#ThisloadstheType1andFreeTypefontmodules
3 u. D1 V/ P- v9 s, K1 x/ h& n2 i; }
Load"type1"
8 o* s( f( p; `$ g4 z+ p4 C/ A+ I/ G/ e5 e l5 v+ I& L" L
#Load"freetype"
$ H; Z0 G. I# |
9 n) L! {5 V1 d! y |
Load"xtt"
6 B7 f! I( _1 P+ }4 |2 U8 O( B4 E2 u c. v! V
# j$ D1 s5 h" m, Z然后,还是修改/etc/X11/XF86Config,加入字体搜索路径:
2 D; [, M. ?# e* ^* m. K3 U6 T9 s7 {1 C/ Q& C) u# @5 ~
* I D$ J3 ~$ b a) X8 o' q* x
FontPath"/usr/X11R6/lib/X11/fonts/local/"
4 A5 P J I; O2 R) }$ l5 G( G
& G7 _' s; Z9 `2 T; ]6 R3 tFontPath"/usr/X11R6/lib/X11/fonts/misc/"
# G8 l! P4 Y$ v; R0 x5 @& M8 Q2 ^- X& R- W! V9 S: T
FontPath"/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
. T: a# f1 f# D/ m/ `+ @6 ?! @7 L3 O9 p- w/ E4 v
FontPath"/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
7 P+ h$ M1 i' ^1 _/ G" r
; g5 L' m% q1 M4 @0 t/ U# K: k/ c
FontPath"/usr/X11R6/lib/X11/fonts/Type1/"
4 t [6 x9 a# p8 t& s
0 @, ~ h6 T& T% L! TFontPath"/usr/X11R6/lib/X11/fonts/Speedo/"
: g1 }/ v# q6 @, n. G3 [! N
, u% n5 V. v) Z% C ?. Z" x
FontPath"/usr/X11R6/lib/X11/fonts/75dpi/"
) O) W- @% ^! z7 r! v2 V' e0 j
9 d& l9 C7 n3 U5 n* l. H" k
FontPath"/usr/X11R6/lib/X11/fonts/100dpi/"
1 w0 o: W" ` ^+ R
% F8 r( N7 e8 W# N; `
FontPath"/usr/X11R6/lib/X11/fonts/TrueType/" %26lt;-加入这一行
/ v4 f$ w9 c$ i5 E( h4 C( V) y4 S; C0 z! C3 `1 t: l) u
8 v! w( R; {) G8 ^% s! \2 c! [
(注:默认条件,新的XFree86不使用xfs)
9 h6 R% D; l" n% K }5 |' l1 t6 k5 B* l3 }' f% [1 U- F: G
- O( J& Q5 t1 m" [5 H/ _; |
2-4 让gnome使用TrueType
/ M" Z# @) h" {1 d) Y& n
/ g: @* C( W2 H5 ]" x( Z. B. ` k) I+ G3 F) l1 Q q
修改/etc/gtk/gtkrc.zh_CN,让gtk使用TrueType字体。
$ G0 \4 E$ g; P8 y: I- P2 A; M! ^
/ }) k& |2 x, C2 u4 b# L; I
style"gtk-default-zh-cn"{
/ h v7 m' E' \ i: h3 \
& E! v3 |) \; J' k& E$ }6 B1 f"-misc-SimSun-medium-r-normal--12-0-0-0-p-0-*-*"
6 o8 W9 o# U+ l' Z* P C% t
1 Z8 Z& n2 ]8 z3 B}
0 K/ A: G2 O; A- ~' Y' R: U
1 i) C3 |# O* X3 ~4 {# F% B5 o
3 A' |! k1 h6 N, x# \$ B! E2 k三 享受TrueType
( Z) R9 L3 K- r4 o' j
/ U! A! E1 h2 H! M. b
# I* T# O! a' K到这里,你可以享受TrueType的乐趣了!
. O0 ^$ a. O1 D
! ` q9 W, L4 v2 V5 y0 x# A9 |
: ^ o8 v- g9 i2 N把LC_ALL环境变量设定为zh_CN.GB2312(关于中文环境及中文输入法的安装请参考上一章),startx看一下吧!!
; y+ p7 v n/ R% n
' K8 z. j# `6 [$ I6 b
$ ~, }7 f5 x m/ b* b
让netscape使用TrueType
* ~6 R% X- d: e/ J7 a( q- S) e, b- Q$ g
Edit-%26gt

referance-%26gt;Fonts将相应的字体项目改为chinese的就够了。
3 i8 Y9 W/ T) T: J; o0 a" T& p
7 J- X5 Y# X5 A4 V e" ^
* u, y) L8 P3 w0 D% ]" m/ C9 t汉化GNOME的菜单项:
/ r% \1 v7 Q/ g" @8 i0 Y
% F" E! I) x6 ?' b9 J4 g# t/ X2 F5 y在/usr/share/gnome/apps/下,有一些以.desktop为后缀的文件,打开该文件,加入一行
7 V+ L# l/ Z! p$ s& Y
: @$ j! A& }' c5 ~
. e* L1 q m' o, U! X6 h4 |
Name[zh]=你想要的中文名
# Q2 v" O( C. j; C5 C* H: P# m6 f4 [$ a$ M5 N
: Z2 o/ ]3 h" {6 x8 X则可对相应的菜单项增加中文名,很容易,一看就会。
, H, p6 ^. o7 P- L. {9 z$ [
5 k+ O) X# _% [GNOME的个人菜单项存放在HOME目录下的.gnome/apps目录里,形式相同。
7 n( c( Y6 A9 i S0 \* n0 {) o v4 ]
! S+ }7 L; u. t$ f: s/ H1 G1 Q% |$ o9 {1 D0 v# ?
后记:
# X4 R* U# Y8 \
: l4 g. q( J- o以上是本人安装TrueType字体支持的全过程,如果各位还有什么问题,请发信到bigluo@china.com.
6 }% P8 t' w3 \; R7 s: W
# |& f5 l, J( p" ]/ z- Z- }# S5 N
事情到这里看起来好像是非常完美了,X-Windows有了中文支持,有了中文输入法,可以使用TrueType字体。但是事实并不是这样的,BUGS很多,中文的支持也是非常的不完整:
H1 g! \: m t! U7 _+ m6 D# f
/ t* M' b3 [) i B4 Z! ~
4 u( K) ~9 s3 Q3 }/ a0 ]Gnome所附带的程序当中,好像就有一个gedit是支持vim协议的。
. ]( V4 ~( w2 E, S" h7 i- a
! W; L1 j$ Z! N. X
2 z1 b0 x9 ^1 g# ^, ~在qt1.42的时候,有一个zh_qt-1.4.2.patch可以让kde支持中文,1.44的qt加入更好的东方语系的支持但是好像还需要一个补丁,所以当你在gnome环境下看kde菜单的内容是中文的,但是一旦你使用kde桌面,就变成乱码了。
! U7 n; z, i7 ^( g
w# X! J: H% ^2 z$ v7 L
' \& K3 M6 s* K O
gedit对TrueType的支持也不是太好,一旦把它的字体设置成为TrueType,他就会当掉。
% P# _8 x: z* A2 k8 M4 O) ~+ W
: g j" K' i5 F& p) c5 }( L
( _- O9 ~) g# R% N等等。。。。太多了
- Z1 n8 ~3 A4 W7 ^' Q3 R7 u8 Q4 @
' m% I% g! n0 W: o
. y) m) X/ j. t+ ~我们选择Linux的原因是它的自由性,
台湾人很无私的做到了这一点,我们目前所能够看到的合用到的中文支持,好多来自于
台湾。我们又做了些什么?看看那些这个版本那个版本的中文Linux,充其量不过是把RedHat拿回来汉化了一遍而已,是如何汉化的呢?-不告诉你,因为这是他们赚钱的法宝!
, [6 \8 C. E; |2 k
7 h: i" b7 ]4 m2 n4 K
7 x7 T0 H3 m" kLinux到如今,还并不是一个稳定成熟的
系统,在中国流行起来也不过是一两年而已,现在就靠他想赚钱,总有一天会走上。。。