最近在做嵌入式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):
ARM显示效果为:
参考资料:
https://blog.csdn.net/liqinghan/article/details/80197193
https://blog.csdn.net/qq_41248872/article/details/89138088
https://blog.csdn.net/wu159632/article/details/7401358
https://blog.csdn.net/wisape/article/details/38494005
https://blog.csdn.net/gorlly/article/details/71005321