移植到ARM的qt4.6.3显示中文的问题
2010-09-23 17:18
423 查看
移植了QT4.6.3的ARM无法正常的现实中文
如果是在X86平台上时候,使用QTextCodec::setCodecForTr(QTextCodec::codecForLocale());来设置显示中文
但是在ARM平台上却不行,我们需要移植一些中文字体库,这里使用的是QT自带的中文字体库,wenquanyi_120_50.qpf
放在QT的安装目录下 /usr/local/Trolltech/lib/fonts下面
在/etc/profile中导出路径
export QT_QWS_FONTDIR=/usr/local/qt463lib/lib/fonts
然后修改main.cpp文件
QApplication a(argc, argv);
QTextCodec *codec = QTextCodec::codecForName("gbk");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
QFont font("wenquanyi",6);
a.setFont(font);
需要说明的是,QTextCodec *codec = QTextCodec::codecForName("gbk")如果不可行,你可以再试试QTextCodec *codec = QTextCodec::codecForName("UTF-8")
wenquanyi字体的说明
wqx wenquanyi_120_50.qpf QPF n 50 120
wqx wenquanyi_120_75.qpf QPF n 75 120
wqx wenquanyi_130_50.qpf QPF n 50 130
wqx wenquanyi_130_75.qpf QPF n 75 130
wqx wenquanyi_150_50.qpf QPF n 50 150
wqx wenquanyi_150_75.qpf QPF n 75 150
wqx wenquanyi_160_50.qpf QPF n 50 160
wqx wenquanyi_160_75.qpf QPF n 75 160
在这里第一列为name,第二列为file,第3列为renderer,字型格式,如BDF,TTF,QPF等,第4列n表示iitalic,表示是否为斜体字,第5列为weight,字体宽度,50是Normal,而75是Bold ,第6列为size字号,120为12pt.第7列为flag可忽略不写,有3个选者,s=smooth(anti-aliased),u=unicode range when saving(default is Latin1), a=ASCII range when saving(default is Latin1).
这样只要按照前面i18n的方法,app->setfont("wqx");
就可以显示很好看的中文字体了,
如果是在X86平台上时候,使用QTextCodec::setCodecForTr(QTextCodec::codecForLocale());来设置显示中文
但是在ARM平台上却不行,我们需要移植一些中文字体库,这里使用的是QT自带的中文字体库,wenquanyi_120_50.qpf
放在QT的安装目录下 /usr/local/Trolltech/lib/fonts下面
在/etc/profile中导出路径
export QT_QWS_FONTDIR=/usr/local/qt463lib/lib/fonts
然后修改main.cpp文件
QApplication a(argc, argv);
QTextCodec *codec = QTextCodec::codecForName("gbk");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
QFont font("wenquanyi",6);
a.setFont(font);
需要说明的是,QTextCodec *codec = QTextCodec::codecForName("gbk")如果不可行,你可以再试试QTextCodec *codec = QTextCodec::codecForName("UTF-8")
wenquanyi字体的说明
wqx wenquanyi_120_50.qpf QPF n 50 120
wqx wenquanyi_120_75.qpf QPF n 75 120
wqx wenquanyi_130_50.qpf QPF n 50 130
wqx wenquanyi_130_75.qpf QPF n 75 130
wqx wenquanyi_150_50.qpf QPF n 50 150
wqx wenquanyi_150_75.qpf QPF n 75 150
wqx wenquanyi_160_50.qpf QPF n 50 160
wqx wenquanyi_160_75.qpf QPF n 75 160
在这里第一列为name,第二列为file,第3列为renderer,字型格式,如BDF,TTF,QPF等,第4列n表示iitalic,表示是否为斜体字,第5列为weight,字体宽度,50是Normal,而75是Bold ,第6列为size字号,120为12pt.第7列为flag可忽略不写,有3个选者,s=smooth(anti-aliased),u=unicode range when saving(default is Latin1), a=ASCII range when saving(default is Latin1).
这样只要按照前面i18n的方法,app->setfont("wqx");
就可以显示很好看的中文字体了,
相关文章推荐
- 移植到ARM的qt4.6.3显示中文的问题
- 关于Qt移植后环境变量的设置 qt移植到arm中文显示问题解决 实现pc与tiny210 arm开发板 udp通信(续上)
- 关于Qt移植后环境变量的设置 qt移植到arm中文显示问题解决 实现pc与tiny210 arm开发板 udp通信
- 【Qt移植到linux】问题 qt界面无法输入中文,中文不显示,乱码等问题
- 【Qt移植到linux】问题7 qt界面无法输入中文,中文不显示,乱码等问题
- 移植的的QT程序不能显示中文问题
- Qt显示中文ansi字符串乱码问题解决方案
- Qt中文显示问题解决
- QT在linux下中文显示问题
- Qt界面显示中文乱码问题
- 关于Qt显示Jpg图片程序的移植和数据库的setfilter函数的问题
- Qt学习之路【1】:QT显示中文问题
- QT 中文显示问题
- QT4.6.3应用程序移植到Qtopia-2.2.0的ARM中
- 解析 Qt 字库移植并能显示中文 (上篇)
- ARM开发板6410移植opencv-2.4.7库qt 问题汇总解决
- VS2013 QT5.3.2中文显示乱码问题
- ARM平台下的Qt移植:移植相关问题和解决方法
- qt-4.8.5移植不能显示中文的解决办法
- qt字库的移植(使其很好的显示中文)