QT在ubuntu下無法顯示中文的原因,包括QT4與QT5的解決方法
阿新 • • 發佈:2019-01-02
一.QT4
按照網上了說沒有字型檔我添加了還是沒用。最後折騰了半天,搞定了,分享一下。
1.第一步下載font_wenquanyi.rar可以是qpf也可以是ttf,網址
https://pan.baidu.com/s/1EaB6V9i_DQoKqsfT8_bWMg
2.將這個字型檔複製到QT的/lib/fonts下
3..在mainWindows w下新增
QTextCodec* codec = QTextCodec::codecForName("UTF-8"); QTextCodec::setCodecForLocale(codec); QTextCodec::setCodecForCStrings(codec); QTextCodec::setCodecForTr(codec);
4.寫text時,ui->button->setText(QString::fromUtf8("測試"));即可
二.QT5
這個就要感謝我的同事,經過他長時間的試驗終於解決了。
1.下載ttf格式的字型以及設定
下載我這裡就不多說了直接上設定程式碼,在main里加入
int id = QFontDatabase::addApplicationFont("/lib/fonts/WenQuanYi_Micro_Hei.ttf"); QString msyh = QFontDatabase::applicationFontFamilies(id).at(0); QFont font(msyh, 10); font.setPointSize(20); a.setFont(font);
2.寫text時,如果不是UTF-8格式的時候,ui->button->setText(QObject::trUtf8("測試"));