• 9312阅读
  • 10回复

[提问]嵌入式linux系统qt界面的中文字体显示 [复制链接]

上一主题 下一主题
离线newworker
 

只看楼主 倒序阅读 楼主  发表于: 2016-10-26
           写了一个简单的qt程序,下载到海思Hi3531A开发板上运行,开发板上的系统为linux系统,但是界面上无法显示中文为一片乱码,哪位大神有相关经历介绍一下。。。
离线aimybbe

只看该作者 1楼 发表于: 2016-10-28
没有中文字体吧
离线newworker

只看该作者 2楼 发表于: 2016-10-28
回 aimybbe 的帖子
aimybbe:没有中文字体吧 (2016-10-28 08:45) 

在网上搜了一些教程,说是下载文泉驿的中文字体可以用,但是按照网上的教程还是一堆乱码
离线rotung

只看该作者 3楼 发表于: 2016-10-28
编码格式不对吧, 试试设置下编码格式,然后转换下。
QString str = "我是中文";
QTextCodec *codec = QTextCodec::codecForName("GB18030");
QByteArray encodedString = codec->fromUnicode(str);
离线aimybbe

只看该作者 4楼 发表于: 2016-11-01
回 newworker 的帖子
newworker:在网上搜了一些教程,说是下载文泉驿的中文字体可以用,但是按照网上的教程还是一堆乱码 (2016-10-28 09:30) 

完全可以的。我也搞过Hi3531
离线大漠之鹰

只看该作者 5楼 发表于: 2016-11-01
Qt哪个版本啊
本是后山人,偶作前堂客,醉舞经阁半卷书,坐井说天阔。大志戏功名,海斗量福祸,论到囊中羞涩时,怒指乾坤错
QQ:874164244
离线newworker

只看该作者 6楼 发表于: 2016-11-02
回 大漠之鹰 的帖子
大漠之鹰:Qt哪个版本啊 (2016-11-01 10:27)

嵌入式版的qt4.8.6,下了文泉驿的字体库添加到/lib/fonts下依然显示是乱码
离线大漠之鹰

只看该作者 7楼 发表于: 2016-11-04
回 newworker 的帖子
newworker:嵌入式版的qt4.8.6,下了文泉驿的字体库添加到/lib/fonts下依然显示是乱码
 (2016-11-02 13:30) 

QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));

linux、vxworks下编码默认是utf-8的,所以在嵌入式系统下用程序开始QApplication之后加入以上三行应该就可以了,可以试试用windows下的字体,会好看一点儿
本是后山人,偶作前堂客,醉舞经阁半卷书,坐井说天阔。大志戏功名,海斗量福祸,论到囊中羞涩时,怒指乾坤错
QQ:874164244
离线jiangbaijun

只看该作者 8楼 发表于: 2016-11-23

QTextCodec *codec = QTextCodec::codecForName("UTF-8");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
在QApplication前里加上

加入QFont font("wenquanyi", JSTAR_SYSTEM_FONT_SIZE, QFont::Normal);
    app.setFont(font);字体支持

中文显示可以用到国际化或者把你工程转为utf-8编码
离线zc1239044730

只看该作者 9楼 发表于: 2016-11-30
要在main中引用,系统怎么知道你用没用,
离线shf1986

只看该作者 10楼 发表于: 2017-01-10
编码格式的问题......
QQ:173409750
Atmel SAMA5D3x(QQ群:476153000)
TI AM335x(QQ群:275644633)
Qualcomm/NXP/Freescale iMX6(QQ群:47768065)
嵌入式Qt、MySQL(QQ群:437438881)
快速回复
限100 字节
 
上一个 下一个