游世集

遨游人世,累文一集

  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  87 随笔 :: 0 文章 :: 27 评论 :: 0 Trackbacks

   只是做个笔记:   

   安装以下这几个字体:ttf-fireflysung,ttf-bitstream-vera ,ttf-dejavu,msttcorefonts,ttf-arphic-bkai00mp ,tf-arphic-gbsn00lp, ttf-arphic-bsmi00lp ,
ttf-arphic-gkai00mp

编辑/etc/fonts/fonts.conf这个文件,检查字体的使用顺序,把你要用的效果最好的字体放在最前面。
重排Serif字体显示顺序:

<alias>
      
<family>serif</family>
      
<prefer>
         
<family>DejaVu Serif</family>
         
<family>Bitstream Vera Serif</family>
         
<family>Times New Roman</family>
         
<family>Times</family>
         
<family>AR PL New Sung</family>
         
<family>SimSun</family>
         
<family>Luxi Serif</family>
         
<family>AR PL Mingti2L Big5</family>
         
<family>AR PL SungtiL GB</family>
         
<family>Ming(ISO10646)</family>
         
<family>Kochi Mincho</family>
         
<family>Baekmuk Batung</family>
      
</prefer>
  
</alias>

关键是把效果最好的放在最前,DejaVu和Bitstream Vera的英文显示效果最好,所以排在所有英文字体的前面,而AR PL New Sung(就是firefly的字体)以及Simsun的中文效果最好,所以排在所有cjk字体的前面.我的技巧是直接搜索Luxi字体,在这个字体前加上自己的中文字体。

重排sans-serif字体显示顺序:

<alias>
      
<family>sans-serif</family>
      
<prefer>
          
<family>DejaVu Serif</family>
          
<family>Bitstream Vera Sans</family>
          
<family>Arial</family>
          
<family>Verdana</family>
          
<family>Helvetica</family>
          
<family>AR PL New Sung</family>
          
<family>SimSun</family>
          
<family>Luxi Serif</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>


Fontconfig把sans定为sans-serif的别名,所以排序的办法也是一样。

重排monospace的字体显示顺序:

<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>

 




调整/etc/fonts/local.conf这一步也是非常重要的,因为我们要做的是关闭中文字体在8px-16px之间时的Anti-Alias,以及加入粗体的设定。

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file for local customizations -->
<fontconfig>
<!--
  Enable sub-pixel rendering
    <match target="font">
        <edit name="rgba" mode="assign"><const>rgb</const></edit>
    </match>
-->
<!--
  Add by Firefly(firefly@firefly.idv.tw)
-->
        
<match target="font">
        
<edit name="embeddedbitmap" mode="assign">
            
<bool>true</bool>
        
</edit>
        
</match>

<!--
  Add by Firefly(firefly@firefly.idv.tw)
  Most of Asian fonts can't explain by freetype2,
  so,if these fonts have dual width(half/full) and monospacing,
  you need to disable globaladvance.
 
-->
    
<match target="font">
        
<test name="spacing" compare="more_eq">
            
<const>mono</const>
        
</test>
        
<edit name="globaladvance" mode="assign">
            
<bool>false</bool>
        
</edit>
    
</match>

<!-- 
 Add by firefly@firefly.idv.tw
 Artificial bold for fonts without a bold version.
 
-->
    
<match target="font">
        
<!-- check to see if the pattern requested > "medium" -->
        
<test target="pattern" name="weight" compare="more">
            
<const>medium</const>
        
</test>
        
<!-- pretend the font is bold now -->
        
<edit name="weight" mode="assign">
            
<const>bold</const>
        
</edit>
    
</match>
<!--
  Add by firefly@firefly.idv.tw
-->
    
<match target="pattern">
        
<test name="lang" compare="contains">
            
<string>zh-tw</string>
            
<string>zh-cn</string>
            
<string>zh-hk</string>
            
<string>zh-mo</string>
            
<string>zh-sg</string>
            
<string>zh</string>
            
<string>ja</string>
            
<string>ko</string>
        
</test>
        
<edit name="hinting" mode="assign">
            
<bool>true</bool>
        
</edit>
        
<edit name="usegamma" mode="assign">
            
<if>
            
<less>
                
<name>pixelsize</name>
                
<double>20</double>
            
</less>
            
</if>
            
<bool>true</bool>
        
</edit>
    
</match>
<!---->    
    
<config>
<!--
  Add by Firefly (firefly@firefly.idv.tw)
  Output non English/Latin family name.
 
-->
        
<familyoutput>
            
<const>auto</const>
            
<!--const>englishonly</const-->
            
<!--const>any</const-->
        
</familyoutput>
    
</config>
<!--..-->
<!--
  Add by EricNeon (ericneon@geekbone.org)
 Disable Chinese fonts Anti-Alias in 8px-16px. 
-->
    
<match target="font">
          
<test name="pixelsize" compare="more_eq">
             
<double>8</double>
        
</test>
          
<test name="pixelsize" compare="less_eq">
             
<double>16</double>
        
</test>
        
<edit name="antialias">
            
<bool>false</bool>
        
</edit>
        
<edit name="hinting">
            
<bool>true</bool>
        
</edit>
    
</match>

</fontconfig>


接着我们来做一次模仿,请在所有写着“Bitstream Vera xxx”字样的一行前面按照这行的写法添加自己的字体。这样做的目的是让系统在做字体的替换时做得更彻底些。例如:
<match target="font">
    
<test name="family">
        
<string>DejaVu Sans Mono</string>
        
<string>Bitstream Vera Sans Mono</string>
    
</test>
    
</match>
posted on 2006-01-14 16:57 xlmo 阅读(776) 评论(0)  编辑 收藏 引用 所属分类: GNU/Linux
只有注册用户登录后才能发表评论。