当前位置导航:炫浪网>>网络学院>>操作系统>>Linux教程

解决Fedora字体发虚,粗体显示及美化


  一 最简单的“犯法”
  
  1 为Fdora 添加 fireflysung字体,可到网络上下载或者者用arphic-uming,以在任何一个Debian的mirror下载,也内嵌了firefly点阵字
  
  2 解压后,把fireflysung.ttf或者uming.ttf复制到 /usr/share/fonts/chinese/TrueType
  
  3 桌面─> 首选项 ─ > 字体,把字体都设置为 AP RL Newsung 或者AR PL ShanHeiSun Uni,字体渲染选择单色,注销,enjoy!
  
  二 进一步的美化工作
  
  如果对字体显示要求高点的话如:有粗体字,就需要多一些的步骤了。
  
  不多说了。开始,Let's Go!
  
  1 首先要先提一下要注意的事项:
  
  a 不建议再用XMMS等古老的GTK +(GTK1)程序了,Fedora是很fashion,bleeding的发行,再用古老的程序
  
  和Fedora显得不太协调了,所以不需要用ttmkfdir/ mkfontscale,生成字体索引,也不需要对/etc/gtkrc.zh_CN,/etc/gtkrc.utf-8进行配置。如果要对这些使用core字体系统的古老程序配置,注意还要把字体路径加入xorg.conf的 Files Section
  
  如 FontPath "/path/to/fonts"
  
  b 不应对/etc/fonts/fonts.conf 做任何的改动,因为下次升级fontconfig包后,fonts.con会被新的替换掉。
  
  应该在/etc/fonts/local.conf进行修改,如果用fontconfig-2.3.0以上的应该把 配置放在/etc/fonts/conf.d内
  
  (按照旧的方式放在local.conf也可以)并以一个2位数字做首文件名,如:/etc/fonts/conf.d/10myfonts.conf, /etc/fonts/conf.d/20autohint.conf。
  
  c 新版的freetype(freetype-2.1.10)已经有了虚拟粗体的算法,不需要打补丁就可以有粗体字显示,可以自行升级之。
  
  但是 还要配合新版的fontconfig(2.3.0以上),libXft(2.1.7)。这些在FC5中肯定会有的,但现在还得动动手,升级一下。
  
  d 既然用Linux了,就尽量不要去用那些未经授权的字体simsun ,simsunbd了。(很快就发布的文泉驿字体是很好的选择)
  
  fireflysung的英文字体不是很好看。可以考虑用Hevetica或者Bitsteam Vera配合fireflysung中文字体。
  
  所以首先要对字体进行重排,小弟已经升级fontconfig-2.3.2了,就安新的配置方式叙述了。还是fontconfig-2.2.X
  
  是话,就在local.conf配置。
  
  Fedora已经带了Hevetica字体的,看不到是因为字体路径没有被加进配置文件。
  
  在/etc/fonts/conf.d/ 下建立一个用户自定义配置文件10myfonts.conf
  
  具体的配置和简单的解说可以看下面,配置是一个非AA的显示方案,要使用AA的请自行修改。
  
  代码:
  <?xml version="1.0"?>
  <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
  <!-- conf.d/myfont.conf -->
  <fontconfig>
  <dir>/usr/share/fonts</dir>
  <dir>/usr/share/fonts/local</dir>
  <dir>/usr/local/share/fonts</dir>
  <dir>~/.fonts</dir>
  <!--加入点阵字体路径-->
  <dir>/usr/X11R6/lib/X11/fonts</dir>
  
  <!--
  配置粗体中文显示,要配合freetype-2.1.10,libxft-2.1.7,fontconfig-2.3.X
  -->
  
  <match target="font">
  <!-- check to see if the font is just regular -->
  <test name="weight" compare="less_eq">
  <int>100</int>
  </test>
  <!-- check to see if the pattern requests bold -->
  <test target="pattern" name="weight" compare="more_eq">
  <int>180</int>
  </test>
  <!-- set the embolden flag -->
  <edit name="embolden" mode="assign">
  <bool>true</bool>
  </edit>
  </match>
  
  <!--
  default settings for all fonts.
  -->
  <match target="font" >
  <!-- 打开字体的反锯齿即AA,大号字用AA会更美观  -->
  <edit mode="assign" name="antialias" >
  <bool>t</bool>
  </edit>
  <edit mode="assign" name="hintstyle" >
  <const>hintslight</const>
  </edit>
  <!-- 打开hint -->
  <edit mode="assign" name="hinting" >
  <bool>t</bool>
  </edit>
  <!-- 关闭autohint -->
  <edit mode="assign" name="autohint" >
  <bool>false</bool>
  </edit>
  </match>
  
  <!-- 关闭 8到17号字体的AA -->
  <match target="font" >
  <!--
  <test compare="contains" name="lang" >
  <string>zh-cn</string>
  <string>zh-tw</string>
  <string>ja</string>
  <string>ko</string>
  </test>
  -->
  <test compare="more_eq" name="pixelsize" qual="any" >
  <double>8</double>
  </test>
  <test compare="less_eq" name="pixelsize" qual="any" >
  <double>17</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>
  
  <!--
  设定中文最小字号,使得小字的中文美观
  -->
  <match target="font" >
  <test name="family" qual="any" >
  <string>SimSun</string>
  <string>NSimSun</string>
  <string>SimHei</string>
  <string>AR PL ShanHeiSun Uni</string>
  <string>AR PL ZenKai Uni</string>
  <string>AR PL New Sung</string>
  <string>FZSongTi</string>
  <string>FZMingTiB</string>
  <string>FangSong_GB2312</string>
  <string>KaiTi_GB2312</string>
  </test>
  <test compare="more_eq" name="pixelsize" >
  <int>8</int>
  </test>
  <test compare="less_eq" name="pixelsize" >
  <int>12</int>
  </test>
  <edit compare="eq" name="pixelsize" >
  <int>12</int>
  </edit>
  </match>
  <!--
  
  把serif ,sans,monospace的family(字体族)重新排序,适应中文用户的用字习惯
  -->
  <alias>
  <family>serif</family>
  <prefer>
  <family>Times New Roman</family>
  <family>Nimbus Roman No9 L</family>
  <family>Luxi Serif</family>
  <family>Times</family>
  <family>Bitstream Vera Serif</family>
  <family>Simsun</family>
  <family>WenQuanYi Bitmap Song</family>
  <family>AR PL ShanHeiSun Uni</family>
  <family>AR PL ZenKai Uni</family>
  <family>AR PL New Sung</family>
  <family>FZSongTi</family>
  <family>FZMingTiB</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>Helvetica</family>
  <family>Verdana</family>
  <family>Arial</family>
  <family>Tahoma</family>
  <family>Bitstream Vera Sans</family>
  <family>SimSun</family>
  <family>WenQuanYi Bitmap Song</family>
  <family>AR PL ShanHeiSun Uni</family>
  <family>AR PL ZenKai Uni</family>
  <family>AR PL New Sung</family>
  <family>FZSongTi</family>
  <family>FZMingTiB</family>
  <family>Kochi Gothic</family>
  <family>AR PL KaitiM GB</family>
  <family>AR PL KaitiM Big5</family>
  <family>Baekmuk Dotum</family>
  
  </prefer>
  </alias>
  <alias>
  <family>monospace</family>
  <prefer>
  <family>Courier</family>
  <family>Courier New</family>
  <family>Andale Mono</family>
  <family>Lu
相关内容
赞助商链接