字体配置

flash 显示不了中文,因为不支持点阵wqy,换simsun解决
但simsun的粗体英文难看,因为关了antialias(12px-18px),而那些英文的粗体需要AA
开着AA,字体发虚,有些中文显示不正常,比如scim 原因尚不清楚(可能是不识别"宋体")
所以只能选择在一定px的时候关AA。(关AA的px范围ms有讲究)
在language-selector.conf中,用如下的替换可以解决粗体英文难看问题:

<match target="pattern">
    <test name="family">
        <string>SimSun</string>
        <string>SimSun-18030</string>
        <string>AR PL ShanHeiSun Uni</string>
        <string>AR PL New Sung</string>
        <string>MingLiU</string>
        <string>PMingLiU</string>
    </test>
    <edit binding="strong" mode="prepend" name="family">
        <string>DejaVu Sans</string>
        <string>Bitstream Vera Sans</string>
    </edit>
</match>

但这样做会导致flash中文问题再次出现,于是只好使用不用aa的英文,
改用windows下的英文字体,比如verdana,tahoma,作好适当的字体选择后,问题解决。

别装wqy,不然好多地方字体默认还是wqy,在language-selector.conf中的优先级无效, 不知为何。
配置到这里,乍看起来都不错,还有没有别的问题呢?
超小斜体还不是很好看,比如终端中的,编辑->当前配置->标题和命令,下面的一行小字。

ff的最小字体? 不设置最小字体,显示正常,怀疑是用了修改的simsun。
得到确认,用正常的simsun的话若ff中字体太小则不好看
换回simsun_modified,但是桌面上文本文件的图标预览里面的中文显示不出来了,用原版simsun就可以,郁闷
修改simsun关闭AA的字体px范围为7-16(8也可以,9就不行了),图标预览里的中文显示了,但不是很好看。
禁用字体自动选择? 有必要

当前配置:

字体首选项
应用程序字体 tahoma normal  10
文档字体     sans           10
桌面字体     sans           10
窗口标题字体 sans bold      10
等宽字体     verdana normal 10

ff中字体
默认字体 tahoma 14
比例字体 无衬线字体 14
衬线字体 Times New Roman
无衬线字体 tahoma
等宽字体  verdana 14
最小字体 无
禁止 自动的字体选择

language-selector.conf:
<fontconfig>
    <alias>
                <family>serif</family>
                <prefer>
                        <family>Bitstream Vera Serif</family>
                        <family>DejaVu Serif</family>
                        <family>SimSun</family>
                        <family>Microsoft YaHei</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>AR PL ZenKai Uni</family>
                </prefer>
        </alias>
        <alias>
                <family>sans-serif</family>
                <prefer>
                        <family>Bitstream Vera Sans</family>
                        <family>DejaVu Sans</family>
                        <family>SimSun</family>
                        <family>Microsoft YaHei</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>AR PL ZenKai Uni</family>
                </prefer>
        </alias>
        <alias>
                <family>monospace</family>
                <prefer>
                        <family>DejaVu Sans Mono</family>
                        <family>Bitstream Vera Sans Mono</family>
                        <family>SimSun</family>
                        <family>Microsoft YaHei</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>AR PL ZenKai Uni</family>
                </prefer>
        </alias>
        <match target="font" >
                <test name="family" compare="contains" >
                        <string>Song</string>
                        <string>Sun</string>
                        <string>Kai</string>
                        <string>Ming</string>
                </test>  
                <!-- check to see if the font is just regular -->
                <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="more_eq"> <int>8</int> </test>
                <test name="pixelsize" compare="less_eq"> <int>16</int> </test>
                <edit name="antialias" mode="assign"> <bool>false</bool> </edit>
        </match>
</fontconfig>

这时出现了新的问题,lumaqq里面不能显示中文了。别人发的字看不见,自己发的能看见。
于是改qq的发送字体,没有效果,而且进一步发现,自己的发送字体是Sans,而改为宋体之后自己的字也看不见了。
以为是用simsun覆盖了java字体的缘故,重装java,没有作用。
然后在修改字体的地方发现选择宋体的时候,预览的地方后面的中文都显示不出来。
突然想到一件事情,就是系统可能不识别"宋体",不知道"宋体"是那个字体,
在language-selector.conf中加入:

         <match target="pattern">
         <test name="family"><string>宋体</string></test>
         <edit name="family" mode="assign"><string>SimSun</string></edit>
         </match>
         <match target="pattern">
         <test name="family"><string>新宋体</string></test>
         <edit name="family" mode="assign"><string>SimSun</string></edit>
         </match>
         <match target="pattern">
         <test name="family"><string>黑体</string></test>
         <edit name="family" mode="assign"><string>Microsoft YaHei</string></edit>
         </match>

问题解决!


Last modified on 2007-08-15