开发板和qt中文显示异常解决方法记录
2017-09-28 11:42
330 查看
开发板和qt中文显示异常处理
使用beagleboneblack开发,陆陆续续遇到很多问题,再次记录下,开发板中文显示异常解决办法。问题描述
我的板子是beagleboneblack,移植的官方系统 bone-debian-8.4-iot-armhf-2016-05-13-4gb.img,没有图形界面,移植qt5.6并且安装了X图形系统后,通过xinit启动qt程序,发现qt中文乱码或者无法显示,并且开发板终端命令行也无法打印中文。以下是解决办法。安装系统字库
http://hwcrazy.com/7ff6162065f611e183d8000d601c5586/首先,开发板的命令行和文本中无法使用中文,是因为系统没有安装字库或者设置错误,使用locale 查看设置信息。
使用命令sudo locale-gen en_US.UTF-8安装本地字库
然后修改/etc/default/locale
1 LANG=”zh_US.UTF-8”
2 LANGUAGE=”zh_US.UTF-8”
到此安装完毕,使用locale -a可以查看到刚刚安装的字库,有几十个;如果只有几个那么就是安装失败。
最后一步 重启
重启后,就可以在系统中使用中文了。
安装qt字库
系统中安装了字库后,当我使用xinit qtTEST时,发现我的qt程序还是不能显示中文,我的现象是中文用空格取代了。通过百度找到解决办法,原文blog。不过,在此我还是要记录一下,因为这个轮子太少了,为了解决这个中文问题,耽误了很多时间。
首先下载qt的字库 DroidSansFallback.ttf 密码: kf9d
然后解压文件,并复制到/lib/fonts/
最后在qt代码中使用字库
#include <QApplication> #include <QPushButton> #include <QDebug> #include <QFontDatabase> int main(int argc, char *argv[]) { QApplication a(argc, argv); int id = QFontDatabase::addApplicationFont("/lib/fonts/DroidSansFallback.ttf"); QString msyh = QFontDatabase::applicationFontFamilies (id).at(0); QFont font(msyh,10); qDebug()<<msyh<<endl; font.setPointSize(20); a.setFont(font); QPushButton *btn = new QPushButton("a中文b我是中文!"); btn->show(); return a.exec(); }
在开发板中qmake -project;qmake;make;run
问题完美解决
相关文章推荐
- 【Qt】]两种解决Qt5显示中文乱码的方法
- qt编写的android程序在android系统中运行,中文显示乱码的解决方法
- qt在板子上字很小与中文显示的解决方法
- ubuntu12.04下QT编译无法显示中文的解决方法
- qt在板子上字很小与中文显示的解决方法 .
- RedHat6.3(linux)编译Qt4.8.6中文不显示的解决方法
- qt5.6 中文字体显示乱码问题解决方法
- 数据库一直显示恢复中。。记录一则处理数据库异常的解决方法
- php使用mysql数据库时中文不显示或显示异常解决方法
- 【Qt开发】Qt5.7中文显示乱码解决方法两种
- QT 打印中文显示乱码的解决方法
- Qt4.7程序烧写或者到开发板时,汉字不能正常显示的解决方法
- 【Qt】]两种解决Qt5显示中文乱码的方法
- QT中中文显示乱码 解决方法
- 某些开发版中的Qt Designer菜单等中文显示为乱码问题解决方法初探
- QT5中文显示乱码解决方法
- 开发板运行Qt应用程序时,字体显示不正常的解决方法
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- 解决短信,图标丢失,MP3显示中文的方法(转自阿赖空间)
- AS4在Terminal下中文显示乱码的解决方法