对于使用X Window的用户而言,拥有一个漂亮的界面是非常重要的,只有这样,工作的时候才能心情娱悦,否则,看着大小不一或者是朦朦胧胧的字体,恐怕没人会有心情做自己的工作。
由于中文TTF字库的版权原因,很多Linux的发型版都没有携带最常用的简体中文字库。虽然台湾的文鼎公司捐助了四款中文字体给自由社区,但其中的简体中文字体却只不完整地支持GB2312的字符集,对于多数应用而言都是不够的。RedHat等发型版购买了一些中文字体,但其效果却并不怎么好,因此, RH/Fedora的中文用户一般也都会安装其它的中文字体。
Debian的字体管理有自己的一套,可以说非常方便,因为要美化Debian的中文桌面也是非常容易的。因为使用打包的中文字体来美化系统的文章在网上还是很多的,所以在这里,我只想谈谈如何手工安装中文字体。此外,本文中介绍的内容仅仅适用于Sarge和Sid的用户,对于Woody的用户而言,由于未做过测试,所以不敢妄言,不过应该是出入不大的。
具体安装步骤如下:
安装必要的软件:
美化自己的桌面环境,首先必须要安装一些软件包,用管理员的身份使用如下命令安装,如果已经安装过的则可以跳过这一步。
# apt-get install x-ttcidfont-conf libft-perl libttf2 defoma libfreetype6 fontconfig libxf2
其中,defoma将统一管理xtt、freetype和PS字型,而籍由调用libxft(支持反锯齿)来处理字型的,则是由FontConfig统一管理。而x-ttcidfont-conf软件包是defoma的一个插件,用于管理TrueType和CID字体。
在安装的过程中,系统会提示你将两个目录加入到X Window的配置文件中。如果不做这一步,传统的X Window应用程序将会无法使用defoma管理的TrueType字体。因此,用文本编辑器编辑/etc/X11/XF86Config-4,
在其中Files一节中加入:
FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
FontPath "/var/ilb/defoma/x-ttcidfont-conf.d/dirs/CID"
同时注释掉# FontPath "unix/:7100" # local font server# FontPath "/usr/lib/X11/fonts/CID"在其中Module一节中加入:Load "xtt"同时注释掉# Load "freetype"如果存在文件/etc/X11/fs/config或/etc/X11/fs-xtt/config的话,也同时注释掉其中"catalogue"路径列表中的"/usr/lib/x11/fonts/CID"路径。使用FontConfig工具:
将新字体拷贝到字型目录/usr/share/fonts中,最好建立子目录,设子目录权限为755,字体权限为644。
运行命令ttmkfdir,以建立fonts.scale文件
运行命令mkfontdir,以建立fonts.dir文件
运行命令fc-cache -v -f ,以建立fonts.cache-1
如无特殊情况,至此安装完毕
使用Debian字型管理工具(Defoma或其图形界面Dfontmgr)
将新字体拷贝到字型目录/usr/share/fonts中,最好建立子目录,设子目录权限为755,字体权限为644。
进入字型目录,产生字型的hints文件:defoma-hints truetype ttfname.ttf > name.hints
将产生的hints文件移入目录/etc/defoma/hints中
进入/etc/defoma/hints目录,注册新生成的hints文件:defoma-font reregister-all name.hints
重启X Window或运行命令xset fp rehash,即可使字体生效。
如需删除字型,则使用命令:defoma-font -vt unregister-all name.hints即可
注意事项:
在制作hints文件时,如有需要,可自行修改hints文件,例:
category truetype
begin /usr/share/fonts/truetype/microsoft/simhei.ttf
Family = SimHei
FontName = SimHei
Encoding = Unicode
Location = English Chinese-China
Charset = GB2312 GBK ISO8859-1 ISO10646-1
UniCharset = GB2312 GBK ISO8859-1
GeneralFamily = SimHei
Weight = Light
Width = Variable
Shape = Upright
Foundry = MS
Priority = 20
X-Family = SimHei
X-Weight = medium
X-ElementAlias = foundry=default:family=hei:resx=72:resy=72
TTCap = halfwidth-bw=0.5 italic-angle=0.167 no-roblique no-oblique no-ritalic
end
其中TTCap将halfwidth-bw=0.5的目的就是为了避免中、英文同宽。
修改字体顺序可籍由修改/etc/fonts/fonts.conf来修改,其中GTK2+是修改San-serif faces区段,而QT3则是修改Serif faces区段。
新的Debian安装新字型后可以给FontConfig使用
一般的使用者(即非根用户)安装新字体的方法是将新字体拷贝到$HOME/.fonts目录下,也可自行定义$HOME/.fonts.conf来修改自身的字体