QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2139|回复: 0

请问firefox的字体工作原理

[复制链接]
发表于 2005-4-18 18:53:55 | 显示全部楼层 |阅读模式
我的debian sid在一次升级之后firefox中的宋体小字(e.g. 12pxl)就不再是内嵌点阵了,而是曲线字型加上antialias的结果。与此同时,其它用gtk2和qt的程序都是正常的。修改fontconfig的配置会对firefox产生影响(比如粗宋替换成黑体,开关rgba等等),但是关掉simsun小字的抗拒齿不知道为什么就被firefox忽略过去了。我试图修改firefox里面about:config的内容,好像对firefox的行为方式根本也没影响。

请问firefox中字体配置是怎么工作的呢?是不是除了fontconfig还有别的因素?谢谢指教

细节如下:
1. 我现在所用的库:
libfreetype6    2.1.7-2.3firefly
libfontconfig1 2.3.1
libxft2             2.1.7-1

2. 事情的起因就似乎是apt在升级中把xft2的firefly patch版本换成了debian的prebuild,但是奇怪的是其它程序还都是可以正常工作的。

我试图重新打firefly大大的补丁,但是fontconfig从2.2到2.3变化比较大,直接patch是不行,手工修补不仅工作量大,而且我不了解fontconfig,根本不知道会有什么后果。libxft的补丁需要打过补丁的fontconfig才能编译,所以我只能把补丁的问题先放到一边。

3. /etc/fonts/local.conf一段关于抗锯齿的部分是这么写的:
[code:1]
<match target="font">
    <test name="family" compare="contains">
        <string>SimSun</string>
        <string>AR PL New Sung</string>
    </test>
    <test name="size" comprare="less_eq">
        <double>16</double>
    </test>
    <edit name="antialias">
        <bool>false</bool>
    </edit>
</match>
[/code:1]
不知道是不是firefox不理会match target="fonts"的标签?(可以肯定match target="pattern"包括alias都有作用。)

4. firefox里面的about:config中的选项我也试过了,主要是font.*,但是没起到什么作用。这些选项的文档很少,而且很多东西都搞不清什么意思。像font.FreeType2.enable这样的选项,开着关着好像都没什么差别么。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-4-18 17:27 , Processed in 0.110909 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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