前面一段时间发现有些朋友遇见一个问题,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图如下:
其中的
"XXXXXX/DroidSansFallback.ttf"
,
ttf就是字库名称,xxxx是放的位置,建议放到资源文件中。
好了,需要的朋友可以去试试了。
分享下各种ttf的文件下载地址:点击打开链接http://download.csdn.net/download/clinuxf/10237478