现在的位置: 首页 > 综合 > 正文

QT中文字体显示以及字体大小不能改变的问题

2013年10月02日 ⁄ 综合 ⁄ 共 692字 ⁄ 字号 评论关闭

             想在QT程序中支持中文,最简单的方法:在main函数中调用

QTextCodec::setCodecForTr( QTextCodec::codecForName("GBK") );(字库只要是支持中文的就可以了,比如utf8等)就可以了。然后就像显示英文那样定义QFont font; font.setPointSize(int size); font.setFamily("arial");然后对相应的控件(按钮、标签等)采用setFont(font),就可以了。我最初遇到的一个问题:用font.setFamily("arial")用arial字库是不能显示中文,原因是我的QT库中压根就没有arial字库(GB2132、wenquanyi都一样),然后改为unifont字库,心喜,汉字出来了,不过想让字体变大一点,无论我是font.setPointSize(1);还是font.setPointSize(100);都是一个样,后面是各种百度搜索,查到原因说unifont字库中字体大小是固定的,不能修改,查资料说要从window系统中/c/window/fonts目录下拷贝arial.ttf字库到QT的lib/font目录下面,我拷贝之后,也用font.setFamily("arial");设置了字库,还是不能显示中文,别说改变字体了,最后我的一个嵌入式讨论群里问道,加入字体的时候要把PC机的/c/window/fonts目录下的micro.ttf一起拷贝到QT的库中,最后终于可以了

             希望 能帮到和我遇到相同问题的people....

抱歉!评论已关闭.