[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 一个关于fontconfig字体替换的问题



match target="font"是没有用的,它修改的是已经匹配到的字体的属性,
有另外一个target,用于在fc-cache时直接更改cache中的设置,但我不记得具体
名称了,你man一下就知道,记得做完后得fc-cache一下哦

在 07-9-6,Wang Xu<gnawux@gmail.com> 写道:
> 在 07-9-5,Ming Hua<minghua@rice.edu> 写道:
> > 这是正常的现象,因为 fontconfig 在匹配字体时给语言匹配的权重很高,而
> > Bitstream Vera 是不声明包含中文字体的:
> >     $ fc-list "Bitstream Vera Sans Mono" lang
> >     :lang=aa|ast|ay|bi|br|ch|co|da|de|en|es|et|eu|fi|fj|fo|fr|fur|fy|gd|gl|
> >     gv|ho|ia|id|ie|io|is|it|lb|mg|nb|nds|nl|nn|no|oc|om|pt|rm|sma|smj|so|sq|
> >     sv|sw|tn|tr|ts|vo|vot|wa|xh|yap|zu
> >
> > 至于怎么修改这个基于 locale 对语言匹配的权重,让中文 locale 下也优先选择
> > Bitstream Vera,我就不清楚了。
>
> 嗯,我想可不可以反过来给 Bitstream 里面加上 zh-cn 呢,字体描述里还有 charset,
> lang 里面多一个可能也不会产生什么灾难性影响,不过目前我的改法还不成功:
>    <match target="font">
>        <test compare="eq" name="family" qual="any">
>            <string>Bitstream Vera Sans Mono</string>
>        </test>
>        <edit name="lang" mode="assign_replace" binding="strong">
>            <string>aa|ast|ay|bi|br|ch|co|da|de|en|es|et|eu|fi|fj|fo|fr|fur|fy|gd|gl|gv|ho|ia|id|ie|io|is|it|lb|mg|nb|nds|nl|nn|no|oc|om|pt|rm|sma|smj|so|sq|sv|sw|tn|tr|ts|vo|vot|wa|xh|yap|zh-cn|zu</string>
>        </edit>
>    </match>
> 里面加上 zh-cn,但结果是
> gnawux@stream:~$ fc-match -v "方正细圆简体"|grep lang
>        familylang: "en"(s)
>        stylelang: "en"(s)
>        lang: bg|fj|ho|ia|ie|io|kum|om|os|ru|sel|so|sw|ts|xh|zh-cn|zh-sg|zu(s)
> gnawux@stream:~$ fc-match -v "Bitstream Vera Sans Mono"|grep lang
>        familylang: "en"(s)
>        stylelang: "en"(s)
>        lang: "aa|ast|ay|bi|br|ch|co|da|de|en|es|et|eu|fi|fj|fo|fr|fur|fy|gd|gl|gv|ho|ia|id|ie|io|is|it|lb|mg|nb|nds|nl|nn|no|oc|om|pt|rm|sma|smj|so|sq|sv|sw|tn|tr|ts|vo|vot|wa|xh|yap|zh-cn|zu"(s)
>
> 有一个引号的差距,目前排序仍是不成功的
>
> 是无法修改 lang 还是修改 lang 的方法不对呢,看 manpage,lang 应该就是 String
> 类型的阿
>
> 多谢
>
> --
> Wang Xu
>

Reply to: