安装必要的组件和字体
#emerge cairo fontconfig libXft freetype
#emerge arphicfonts wqy-bitmapfont cjkuni-fonts corefonts ttf-bitstream-vera
然后使用 种草得草 提供的 local.conf (设定 local.conf 要比更改 fonts.conf 来得安全)可以完美的显示 简繁英
感谢 Linuxsir.Org 网友 种草得草 提供此文件
File: /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>
==========================================================================
==========================================================================
==========================================================================
==========================================================================
手工添加如果您需要手工添加Portage里尚未提供或不能提供的字体,您按照下面的步骤手工添加。此处以simsun.ttc为例。 拷贝字体拷贝字体文件到/usr/share/fonts下的一个文件夹里,比如/usr/share/fonts/TTF。然后修改文件权限
修改/etc/X11/xorg.conf保证/etc/X11/xorg.conf的Section "Files"里有相应的路径,比如:
产生fonts.dir和fonts.scale这一步的作用是为了使使用X核心字体API的程序可以利用本字体。这类程序的例子有xterm,emacs,xmms等。 安装x11-apps/mkfontdir和x11-apps/mkfontscale并产生fonts.dir和fonts.scale
更新fontconfig的cache这一步的作用是为了使使用fontconfig来配置字体的程序可以利用本字体。qt程序和gtk+2程序皆属此类。
验证安装成功
使用X核心字体API的程序安装x11-apps/xlsfonts,执行xlsfonts看是否可以列出刚才安装的字体名。X核心字体的名字很长,比如:
如果有,那么xmms这样的程序就可以使用。
使用fontconfig的程序执行fc-list看是否可以列出刚才安装的字体名。 |
==========================================================================
==========================================================================
==========================================================================
==========================================================================
让Gentoo的中英文字体显示更漂亮收藏
新一篇: 快速安装gentoo | 旧一篇: 在Emacs下用C/C++编程
<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>让Gentoo的中英文字体显示更漂亮
# mkfontscale
# mkfontdir
# fc-cache -f -v
接着我们对Fontconfig配置文件/etc/fonts/fonts.conf进行修改,将simsum在Sans和Serif的顺序提前,例如
<!--
Serif faces
-->
<alias>
<family>Bitstream Vera Serif</family>
<family>Times</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>SimSun</family>
<family>Luxi Serif</family>
<family>Kochi Mincho</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>Baekmuk Batang</family>
<default><family>serif</family></default>
</alias>
<!--
Sans-serif faces
-->
<alias>
<family>Bitstream Vera Sans</family>
<family>Helvetica</family>
<family>Arial</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>SimSun</family>
<family>Luxi Sans</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>AR PL KaitiM Big5</family>
<family>Baekmuk Dotum</family>
<default><family>sans-serif</family></default>
</alias>
(中间部分略)
<alias>
<family>serif</family>
<prefer>
<family>Bitstream Vera Serif</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>SimSun</family>
<family>Luxi Serif</family>
<family>Times</family>
<family>Kochi Mincho</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>Baekmuk Batang</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Bitstream Vera Sans</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>SimSun</family>
<family>Luxi Sans</family>
<family>Arial</family>
<family>Helvetica</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>AR PL KaitiM Big5</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>
启动X,在“桌面”-->"首选项"-->“字体”里面将“应用程序字体”、“桌面字体”、“窗口标题字体”全部选为Tahoma,因此更改了中文字体的顺序,在遇到英文字体无法识别的字体时将自动优先选择Simsun做为中文字体。
这时由于没有关闭simsun的antialias,中文字体的显示还是有点难看,可以在/etc/fonts/fonts.conf中加入以下代码关闭simsun字体的AA效果:
<!-- 关闭SimSun的AA -->
<match target="font">
<test qual="any" name="family">
<string>SimSun</string>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>