qt for android中文字体显示异常解决方案

时间:2023-01-31 07:47:56

       前面一段时间发现有些朋友遇见一个问题,qt写的程序中文显示再安卓上面有问题,pc端没有问题,其实之前我也遇见过,用了很多办法都解决不了,后来自己采用的是字库加载解决的,不知道能不能解决其他人的这些问题,现在这边说明记录一下,有用的朋友可以借鉴使用。

具体代码执行如下:

下面这段代码请加在main.cpp里面

int fontId = QFontDatabase::addApplicationFont("XXXXXX/DroidSansFallback.ttf");
//将字体Id传给applicationFontFamilies,得到一个QStringList,其中的第一个元素为新添加字体的family
QString androidFont = QFontDatabase::applicationFontFamilies(fontId).at(0);
QFont font(androidFont);
QGuiApplication::setFont(font);

code图如下:

qt for android中文字体显示异常解决方案

其中的 "XXXXXX/DroidSansFallback.ttf" ttf就是字库名称,xxxx是放的位置,建议放到资源文件中。

好了,需要的朋友可以去试试了。