前不久装了redhat9,进入kde发现其中文字体比以前确实有很多改进,除了字体有点淡之外,比起以前笔者的7.2,好看了不少,也许以后的某个版本不要我们动手汉化了.
1.先去掉xft的字体支持
a. 修改 /etc/bashrc文件,加入 export GDK_USE_XFT=0
b. 运行qtconfig,选Fonts.将:
Enable Anti-Aliasen Font Stpport (Xft)
Anti-Alias Fonts by Default
前的"交差"取消,保存退出.
2. 建立目录:
笔者是这样的 mkdir /usr/share/fonts/winfonts
3. 从 Windows 下拷出simsun.ttc、SimSun18030.ttc、tahoma.ttf及tahomabd.ttf到以上目录,将simsun.ttc、SimSun18030.ttc改为ttf字体.
然后 ttmkfdir>;fonts.dir
修改fonts.scale使其与如下相似:
12
tahoma.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-1
ai=0.3:tahoma.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-iso8859-1
tahomabd.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-iso8859-1
ai=0.3:tahomabd.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-iso8859-1
:1:SimSun18030.ttf -misc-NSimSun_18030-medium-r-normal--0-0-0-0-m-0-gb18030.2000-1
SimSun18030.ttf -misc-SimSun_18030-medium-r-normal--0-0-0-0-m-0-gb18030.2000-1
:1:simsun.ttf -misc-NSimSun-medium-r-normal--0-0-0-0-m-0-gb2312.1980-0
:1:simsun.ttf -misc-NSimSun-medium-r-normal--0-0-0-0-m-0-gbk-0
:1:simsun.ttf -misc-NSimSun-medium-r-normal--0-0-0-0-m-0-iso10646-1
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-iso10646-1
4.然后 cat fonts.scale>; fonts.dir
5. 修改/etc/X11/XF86Config添加:
FontPath "/usr/share/fonts/winfonts"注意要添加在unix/:7100这一行前面。
再在module段中添加:
Load "xtt"
(注意注释掉"load type1"和"load freetype"模块. )
像这样:
#load type1
#load freetype
6. 修改/etc/fonts/fonts.conf,
< !-- Font directory list configured on Mon Sep 9 15:24:30 EDT 2002 -- >;
< dir >;/usr/share/fonts/winfonts< /dir >; #这是我们加上去的
< dir >;/usr/X11R6/lib/X11/fonts/Type1< /dir >;
< dir >;/usr/share/fonts< /dir >;
< dir >;~/.fonts< /dir >;
< dir >;/usr/local/zhfonts< /dir>;
必需修改的第二处:
< !--
If the font still has no generic name, add sans-serif
-- >;
< match target="pattern" >;
< test qual="all" name="family" compare="not_eq" >;
< string >;Simsun< /string >;
< /test >;
< test qual="all" name="family" compare="not_eq" >;
< string >;Simsun< /string >;
< /test >;
< test qual="all" name="family" compare="not_eq" >;
< string >;Simsun< /string >;
< /test >;
< edit name="family" mode="append_last" >;
< string >;Simsun< /string >;
< /edit >;
< /match >;
此处的修改可让不支持汉字的字库使用SimSun字库 .
< match target="font" >;
< test name="lang" compare="contains" >;
< string >;ko< /string >;
< /test >;
< edit name="hinting" mode="assign" >;
< bool >;false< /bool >;
< /edit >;
< /match >;
< match target="font" >;
< test name="lang" compare="contains" >;
< string >;zh< /string >;
< /test >;
< edit name="hinting" mode="assign" >;
< bool >;true< /bool >;# 去掉中文(zh)字体的平滑功能(将fale改成true)。
< /edit >;
< /match >;
重起Xwindow
再运行qtconfig,在Fonts选择你喜欢的字体,这个时候就可以找到simsun了。保存退出。
在KDE选simsun字体.
*****************************************************
附录:
我把前面的方法稍作解释
在fonts.dir文件里tahoma.ttf及tahomabd.ttf是用来显示英文的
初学这可能对里面的设置不理解
最上面的12意思是下面有12行
以ai=0.3:tahomabd.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-iso8859-1 作为例子
ai=0.3意思是右倾斜0.3宽度,tahomabd.ttf是字体文件名(任你取名),misc是组织名这里大概是微软的意思吧,
SimSun是这个字体的真实明,(其实这里我们骗了一下电脑,目的是用他来显示英文),bold是粗体字,i是斜体字,(medium是普通字)
( r是罗马体,)
0对应的是字体大小,这个系统会自动修改所以一般设为0,
0 点大小,同上.
0 X轴解析度,同上.
0 Y轴解析度,同上.
c 字间距为c,即一个汉字的距离,另外还有p,即英文字符距离
0 平均宽度,系统自动修改,所以一般为0.
iso8859-1是字符集,另外上面四种字体可以在windows中得到SimSun18030,可到微软网站下载
后者xp中得到.大家没必要装SimSun18030,他只不过比simsun多了一些少数民族字符,而且他在xtt的驱动下没有simsun好看,有点得不偿失.
我们把FontPath "/usr/share/fonts/winfonts"放在unix/:7100的原因是使我们的设置在重起之后不被xfs字体服务器还原.
xtt,freetype,type1,都是用来驱动truetype字体的,属于系统模块,相比之下,xtt较好
大家可以发现redhat9的本地local是gb18030他是gb2312和gbk的扩充.增加了四字节的编码,目的是为了解决一些生、偏、难字的问题
支持全部中日韩(CJK)统一汉字字符
1.xmms显示中文:
-misc-simsun-medium-r-normal--12-*-*-*-c-*-gb2312.1980-0,fixed
2. 在用mozilla作浏览器时注意选字符集gb18030或gbk.因为gb2312对有些生坯字不能显示.