LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1826|回复: 5

请教QT的字体处理机制

[复制链接]
发表于 2006-4-21 19:37:34 | 显示全部楼层 |阅读模式
现在我对QT的字体处理越来越搞不懂了。

QT不遵循fontconfig的设置?我明明把宋体归为衬线字体,和Times New Roman一类,把黑体归为无衬线字体,和Arial一类。但无论到哪里,比如html中的css是font-fmaily: "Times New Roman", Serif; 中文部分Konqueror也显示为黑体,而GTK程序则分得很清楚,fontconfig已经能认出中文字体名了,firefox在网页中指明宋体的情况下也会使用宋体,而Konqueror则根本毫不理会。

可以通过qtconfig一个个字体设置替代列表,但这样中文的虚拟粗体又没了。

qt 3.3.6的ChangeLog中写道:

- Font system
        Improve startup time on systems with many installed fonts.
        Improve Chinese, Japanese and Korean font handling.


这个改进到底体现在什么地方,我怎么觉得更不可琢磨了。

我今天装了个GNOME,差不多离上次purge掉GNOME一年了,外观倒是不错,但实在不惯。

可爱的KDE啊,被该死的qt的i18n拖后腿了。

或许是我没摸到门道,请各位指点迷津。
 楼主| 发表于 2006-4-21 23:19:53 | 显示全部楼层
这个问题好像很严重,如果locale为en_US.UTF-8,qt/kde程序中,日文还是韩文字体优先了,但日韩字体又没有完全覆盖CJK,所以很多汉字没有显示。Opera在zh_CN.UTF-8下访问UTF-8编码的网页就有这个问题,但日韩字体中缺失的字会用中文字体补上,造成同时有三个字体(英文,日(韩)文,中文)显示。

qt中字体替代的顺序到底按什么排列的?

现在觉得gtk,pango很好,很好。
回复 支持 反对

使用道具 举报

发表于 2006-4-22 03:06:16 | 显示全部楼层
不懂,怎么看出来 日文/韩文 优先了?给我一个例子让我看看?
没用过Opera,不过 Konqueror 一点问题都没有。
回复 支持 反对

使用道具 举报

发表于 2006-4-22 08:28:19 | 显示全部楼层
Konqueror 的拼写检查功能关不掉呢!
回复 支持 反对

使用道具 举报

发表于 2006-5-12 08:07:33 | 显示全部楼层
从qt3.3.6之后我就一直有这个问题, 中文粗体只会出现在sans,serif,monospace几个字体里面, 其他字体中中文粗体都消失了。
回复 支持 反对

使用道具 举报

发表于 2006-5-12 08:28:53 | 显示全部楼层
Post by pluskid
Konqueror 的拼写检查功能关不掉呢!


有投机的办法,在控制中心里把拼写检查设定为一组根本不能正常工作的选项就可以了,比如没装Ispell却把词典客户设为Ispell。
回复 支持 反对

使用道具 举报

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

本版积分规则

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