<< Back to shouce.jb51.net

8.8. 中文字体模糊不清的解决方法

中文字体模糊不清的原因是字体配置不好引起的,有关X window的字体系统在上面已讲过,这里就不再细讲了。现在多数的程序都支持Xft字体系统的fontconfig库,所以调整该字体系统就可使程序达到很好的显示效果。具体调整方法是把以下代码加入到~/.fonts.conf中的<fontconfig>和</fontconfig>元素内。Xft字体的配置文件有三个,其中/etc/fonts/local.conf是本地字体配置文件,我们可在该文件内添加或修改字体配置,但好象新版的Xft的配置文件又有了变化,不使用local.conf文件了。fonts.conf是系统级的字体配置文件,一般不要修改该文件,它通过include指令应用local.conf文件里的配置信息。~/.fonts.conf是用户级字体配置文件,优先级最高。

[Note]
~/.fonts.conf默认是没有的,我们可参照/etc/fonts/local.conf手工创建或直接拷贝该文件。
<!--my fonts additions configure-->
<!-- 关闭所有10至15号字体的抗锯齿功能-->
<match target="font" >
   <test compare="more" name="pixelsize" qual="any">
      <double>10</double>
   </test>
   <test compare="less" name="pixelsize" qual="any">
      <double>15</double>
   </test>
   <edit mode="assign" name="antialias" >
      <bool>false</bool>
   </edit>
</match>

<!-- 调整文字间距过大问题 -->
<match target="font">
<test target="pattern" name="lang" compare="contains">
<string>zh-tw</string>
<string>zh-cn</string>
<string>ja</string>
<string>ko</string>
</test>
<edit name="spacing">
<const>proportional</const>
</edit>
<edit name="globaladvance">
<bool>false</bool>
</edit>
</match>

<!-- 重排字体显示的优先级,使中英文字体更美观,排在最前面的字体会优先显示,如果没有该字体,则使用下一行的字体,以次类推。 -->
<alias>
      <family>serif</family>
      <prefer>
         <family>Bitstream Vera Serif</family>
         <family>Times New Roman</family>
         <family>Times</family>
         <family>AR PL New Sung</family>
         <family>AR PL Mingti2L Big5</family>
         <family>AR PL SungtiL GB</family>
         <family>Ming(ISO10646)</family>
         <family>SimSun</family>
         <family>Kochi Mincho</family>
         <family>Baekmuk Batung</family>
      </prefer>
  </alias>

<alias>
      <family>sans-serif</family>
      <prefer>
         <family>Bitstream Vera Sans</family>
         <family>Arial</family>
         <family>Verdana</family>
         <family>Helvetica</family>
         <family>AR PL New Sung</family>
         <family>Ming(ISO10646)</family>
         <family>AR PL kaitiM Big5</family>
         <family>AR PL kaitiM GB</family>
         <family>Kochi Gothic</family>
         <family>Baekmuk Dotum</family>
      </prefer>
  </alias>

<alias>
      <family>monospace</family>
      <prefer>
         <family>Bitstream Vera Sans Mono</family>
         <family>Courier New</family>
         <family>Courier</family>
         <family>AR PL New Sung</family>
         <family>Ming(ISO10646)</family>
         <family>Kochi Mincho</family>
         <family>Baekmuk Batung</family>
      </prefer>
  </alias>