QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2479|回复: 10

解决Simsun字体英文字体代换及黑体破碎问题.

[复制链接]
发表于 2006-5-7 18:04:34 | 显示全部楼层 |阅读模式
首先说明,这些问题只存在指定使用simsun或宋体的状况,比如一些中文网页.
关于simsun英文字体代换,一般是因为觉得simsun字体中的英文字体不好看,但现在一些新发行版本比如Ubuntu Dapper中和一些打补丁美化方案已经支持中文字体加粗,这时simsun英文字体加粗时会出现破碎现象,已不再是美观问题,而严重影响可读性.比如Hotmail.
查了一些解决方案,看到有人把simsun中的英文字体文件中的英文字体替换掉,我没有下载到.后来发现fontconfig的配置功能是很强大的,也可以解决这个问题.在家目录下的.fonts.conf文件(没有的话新建一个)或其它的fontconfig配置文件包含如下代码:
[code:1]<match target="pattern">

       <test name="family">
           <string>SimSun</string>
                <string>宋体</string>
       </test>
       <edit name="family" mode="prepend" binding="same">
           <string>Verdana</string>
       </edit>
</match>[/code:1]
重新打开浏览器就可以看到效果了.这里是用Verdana字体代换,你可以用你觉得的好看的字体替换掉Verdana,比如Bitstream Vera Sans等.
如果需要的话可以试试,如发现不起作用或有什么副作用请跟贴说明.

参考:
http://www.higherorder.org/wiki/Fontconfig
http://www.linuxfans.org/nuke/modules.php?name=News&file=article&sid=1184&mode=thread&order=0&thold=0
发表于 2006-5-7 20:59:06 | 显示全部楼层
在fc5中好像对firefox的网页不起作用。
另外数字还是很难看。
回复

使用道具 举报

 楼主| 发表于 2006-5-7 22:06:19 | 显示全部楼层
Verdana不一定每个系统都有,确认这里替换为你机器里有的字体.
<string>Verdana</string>
回复

使用道具 举报

发表于 2006-5-7 22:14:18 | 显示全部楼层
绝对是有的,其实我中文默认用的是东文宋体,按你的代码改成了tahoma,但不行。
后来用ml的fontconfig替换了fc5的,就成功了,不知ml作了哪些修改?但kde还是不行。
回复

使用道具 举报

 楼主| 发表于 2006-5-7 22:50:57 | 显示全部楼层
你是说fontconfig这个包吗?不太清楚.我用的是Ubuntu dapper,fontconfig版本是2.3.2
你的意思是按些代码替换东文宋体的英文字体吗?
回复

使用道具 举报

发表于 2006-5-7 23:04:38 | 显示全部楼层
对,现在在GNOME下基本没问题了,就是KDE还不行,必须手工在字体里设置为tahoma。
回复

使用道具 举报

 楼主| 发表于 2006-5-7 23:22:31 | 显示全部楼层
KDE不太清楚.难道不用fontconfig?可能处理方式不一样.
回复

使用道具 举报

发表于 2006-5-8 22:23:31 | 显示全部楼层
[code:1]
<match target="pattern">
        <test qual="any" name="family" compare="eq">
                <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
                <string>SimSun</string></edit>
        <edit name="family" mode="prepend_first" binding="strong">
                <string>Verdana</string>
        </edit>
</match>

<match target="pattern">
        <test qual="any" name="family" compare="eq">
                <string>sans-serif</string>
        </test>
        <edit name="family" mode="assign" binding="strong">
                <string>Verdana</string>
                <string>SimSun</string>
        </edit>
</match>

<match target="pattern">
        <test name="family">
                <string>Verdana</string>
        </test>
        <edit name="family" mode="append" binding="strong">
                <string>SimSun</string>
        </edit>
</match>
[/code:1]
试试看

类似的再加上serif和monospace
回复

使用道具 举报

发表于 2006-5-10 13:07:35 | 显示全部楼层
3n果然乃此中高手,有效。
回复

使用道具 举报

发表于 2006-5-10 14:05:23 | 显示全部楼层
    
建议都去学fonts.conf
回复

使用道具 举报

发表于 2006-5-10 14:51:14 | 显示全部楼层
[quote:6cb6566528="积木"]    
建议都去学fonts.conf[/quote]
有点懒
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-5-14 16:09 , Processed in 0.058071 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表