qt linux 程序设置字体,QT程序中显示中文字体解决办法

最近一直在做移植qtopia4.4.3和QT4.7的工作。qtopia已经可以在龙芯开发板上正常运行。搭建QT4.7的环境,使用QT4.7编写小程序,发现不能显示中文。研究了一番,找到了如下的解决方法:

1.首先需要中文的字体库,QT4.7中好像没有中文字体库,在qtopia4.4.3中从的qtopiacore目录下,也就是qt4.4.3中的lib/fonts目录下找到了中文字体库。拷贝

wenquanyi_120_50.qpf 和wenquanyi_120_75.qpf到文件系统的$QTDIR/lib/fonts下。

2.在fonts目录下添加文件fontdir,内容如下:

wenquanyi wenquanyi_12pt.bdf BDF n 50 120 u

wenquanyi wenquanyi_12ptb.bdf BDF n 75 120 u

3、增加windows字体

a.在 windows 下选择一种字体, 选择 *.ttf 格式的,以仿宋为例(simfang.ttf)

b. 将文件 simfang.ttf 放到开发板 的 /qt/lib/fonts 目录

c. 修改 fonts 目录 下的 fontdir 文件,增加下面一行(此时可以将其余的都去掉,注意第一行不要是空的)

simfang simfang.ttf FT n 75 0 su //0表示任意字体,若固定只有一种

文件格式如下:

uid-22670933-id-5749000.html

3.添加环境变量:export  QT_QWS_FONTDIR=$QTDIR/lib/fonts/

4.修改小程序的主文件main.cpp,设置字体为文泉驿,如下:

#include

#include "qtest.h"

int main(int argc, char *argv[])

{

QApplication a(argc, argv);

QFont font;

font.setPointSize(12); //12的字号

font.setFamily(("wenquanyi")); //font.setFamily(("simfang"));

font.setBold(false);

a.setFont(font);

qtest w;

w.show();

return a.exec();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值