debian 开发版 移植_Ubuntu 面向对象的框架Qt移植到开发板后如何显示中文

本文介绍了如何解决将Ubuntu上的Qt框架移植到开发板后无法显示中文的问题。关键在于设置编码为UTF-8,并将Ubuntu中的中文字体文件复制到开发板的Qt字体库中,同时更新Qt的字体路径。通过在主函数中设置编码和使用tr宏,确保在开发板上运行时可以正确显示中文。
摘要由CSDN通过智能技术生成

Qt是面向对象的框架,在Ubuntu中能够中文显示,但将Qt移植到开发板中却无法中文显示,那么要如何让Qt也能在开放板上显示中文呢?下面小编就给大家介绍下Ubuntu Qt移植到开发板显示中文的方法。

显示中文主要是两点,一是编码,而是字体。

关于编码网上查的资料各种说法都有,utf8 gbk gb2312的,我用的是utf8.

开发板上必须也有对应的中文字体才能够显示中文,我这里在Ubuntu 12.04的安装目录中usr/share/fonts/truetype/wqy目录下,将这个拷贝到开发板Qt库中的字体库中,注意要将Qt的字体路径加入环境变量QT_QWS_FONTDIR=/opt/qt-4.8.4/lib/fonts

a4ffb79a9c23eb30f56023b80cfd1055.png

最后,在主函数中加入代码即可:

#include “widget.h”

#include 《QApplication》

#include 《QTextCodec》

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

{

QApplication a(argc, argv);

QTextCodec *codec = QTextCodec::codecForName(“utf8”);

QTextCodec::setCodecForLocale(codec);

QTextCodec::setCodecForCStrings(codec);

QTextCodec::setCodecForTr(codec);

QFont font;

font.setFamily((“wqy-microhei”));

Widget w;

w.setWindowFlags(Qt::FramelessWindowHint);

w.show();

return a.exec();

}

在使用的时候使用tr宏例如ui-》statelabel-》setText(tr(“摄像头已经运行!”))

这样在开发板上运行的时候就可以使用中文字体,而且不会有字体大小以及排版等方面的问题。

上面就是Linux Qt移植到开发板显示中文的方法介绍了,主要是开发板中没有对应的中文字体所导致的,只需将Qt的字体路径导入到开发板中即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值