目录

嵌入式QT中文显示的问题

目录

嵌入式QT中文显示的问题

最近在做嵌入式QT项目发现中文没法显示,于是百度QT嵌入式显示中文,基本上都是讲TTF字库转成QPF,费时费力。经多次试验,找出其方法:

1.下载相关TTF字库,例如字库:DroidSansFallback.ttf。

在main.cpp 中添加如下代码,使程序调用DroidSansFallback.ttf字库:

#include <QFontDatabase>

    QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
    QApplication a(argc, argv);

    int id = QFontDatabase::addApplicationFont("/usr/lib/fonts/DroidSansFallback.ttf");
    QString msyh = QFontDatabase::applicationFontFamilies (id).at(0);
    QFont font(msyh,10);
    qDebug()<<msyh<<endl;
    font.setPointSize(20);
    a.setFont(font);

    ...
    a.exec();

在UI中设置(QLable,QPushButton):

https://i-blog.csdnimg.cn/blog_migrate/f0e3a340ec2f0e9e507af540cfd039dd.png

https://i-blog.csdnimg.cn/blog_migrate/b407fc3f2de5783a4e359fb5c2e6f117.png

https://i-blog.csdnimg.cn/blog_migrate/b929c98f307938d4de4684ea1ff7c1d3.png

ARM显示效果为:

https://i-blog.csdnimg.cn/blog_migrate/8dfd7f88d51751c6b2887bfad786be8f.png

参考资料: