拷贝字体
拷贝字体文件到/usr/share/fonts下的一个文件夹里,比如/usr/share/fonts/TTF。然后修改文件权限
代码: 修改权限
# chmod 644 /usr/share/fonts/TTF/simsun.ttc
修改/etc/X11/xorg.conf
保证/etc/X11/xorg.conf的Section "Files"里有相应的路径,比如:
文件: /etc/X11/xorg.conf
Section "Files"
...
FontPath "/usr/share/fonts/TTF"
...
EndSection
产生fonts.dir和fonts.scale
这一步的作用是为了使使用X核心字体API的程序可以利用本字体。这类程序的例子有xterm,emacs,xmms等。
安装x11-apps/mkfontdir和x11-apps/mkfontscale并产生fonts.dir和fonts.scale
代码: 安装mkfontdir和mkfontscale
$ emerge mkfontdir mkfontscale
$ cd /usr/share/fonts/TTF
$ sudo mkfontdir
$ sudo mkfontscale
更新fontconfig的cache
这一步的作用是为了使使用fontconfig来配置字体的程序可以利用本字体。qt程序和gtk+2程序皆属此类。
代码: fc-cache -fv
$ sudo fc-cache -fv
验证安装成功
提示! 做完上面这些步骤之后您可能需要重启一下你的X,然后继续下面的操作
安装x11-apps/xlsfonts,执行xlsfonts看是否可以列出刚才安装的字体名。X核心字体的名字很长,比如:
代码: X核心字体名
-misc-simsun-medium-r-normal--0-0-0-0-c-0-ascii-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-gb18030.2000-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-gbk-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-ibm-cp850
-misc-simsun-medium-r-normal--0-0-0-0-c-0-iso10646-1
-misc-simsun-medium-r-normal--0-0-0-0-c-0-iso8859-1
-misc-simsun-medium-r-normal--0-0-0-0-c-0-iso8859-15
-misc-simsun-medium-r-normal--0-0-0-0-c-0-koi8-r
如果有,那么xmms这样的程序就可以使用。
提示! xlsfonts命令需要在X下的Terminal执行,不然你需要加参数-display displayname指定displayname
使用fontconfig的程序
执行fc-list看是否可以列出刚才安装的字体名。
emerge cairo fontconfig libXft freetype #emerge arphicfonts wqy-bitmapfont cjkuni-fonts corefonts ttf-bitstream-vera
/etc/fonts/local.conf
<?xml version="1.0"?>
<fontconfig>
<alias>
<family>serif</family>
<prefer>
<family>Bitstream Vera Serif</family>
<family>Microsoft Yahei</family>
<family>DejaVu Serif</family>
<family>AR PL ShanHeiSun Uni</family>
<family>WenQuanYi Bitmap Song</family>
<family>AR PL ZenKai Uni</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Bitstream Vera Sans</family>
<family>Microsoft Yahei</family>
<family>DejaVu Sans</family>
<family>AR PL ShanHeiSun Uni</family>
<family>WenQuanYi Bitmap Song</family>
<family>AR PL ZenKai Uni</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Bitstream Vera Sans Mono</family>
<family>Microsoft Yahei</family>
<family>DejaVu Sans Mono</family>
<family>AR PL ShanHeiSun Uni</family>
<family>WenQuanYi Bitmap Song</family>
<family>AR PL ZenKai Uni</family>
</prefer>
</alias>
<match target="font" >
<edit name="rgba" mode="assign">
<const>none</const>
</edit>
<edit mode="assign" name="antialias" >
<bool>true</bool>
</edit>
<edit mode="assign" name="autohint" >
<bool>false</bool>
</edit>
<edit name="hinting">
<bool>true</bool>
</edit>
<edit name="hintstyle" mode="assign" >
<const>hintmedium</const>
</edit>
</match>
<match target="font" >
<test name="family" compare="contains" >
<string>Song</string>
<string>Sun</string>
<string>Kai</string>
<string>Ming</string>
</test>
<test name="weight" compare="less_eq">
<int>100</int>
</test>
<test compare="more_eq" target="pattern" name="weight" >
<int>180</int>
</test>
<edit mode="assign" name="embolden" >
<bool>true</bool>
</edit>
</match>
<match target="font" >
<test name="family" compare="contains" >
<string>Song</string>
<string>Sun</string>
<string>Kai</string>
<string>Ming</string>
</test>
<edit name="globaladvance">
<bool>false</bool>
</edit>
<edit name="spacing">
<int>0</int>
</edit>
<edit name="hinting">
<bool>true</bool>
</edit>
<edit name="autohint">
<bool>false</bool>
</edit>
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
<test name="pixelsize" compare="less_eq">
<int>18</int>
</test>
<edit name="antialias" mode="assign" >
<bool>false</bool>
</edit>
</match>
<match target="font" >
<test name="family" compare="contains" >
<string>Microsoft Yahei</string>
</test>
<edit name="globaladvance">
<bool>false</bool>
</edit>
<edit name="spacing">
<int>0</int>
</edit>
</match>
</fontconfig>