linux與QT(ARM)的中文顯示配置

ubuntu中文支持

安裝中文語言包

打開 System Settings(系統設置)菜單,點擊打開 Language Support(語言支持)選項卡。
Install / Remove Languages,在彈出的選項卡中下拉找到Chinese(Simplified),即中文簡體,在後面的選項框中打勾。然後點擊Apply Changes 提交,系統會自動聯網下載中文語言包。如果提示缺少安裝包,在命令行輸入:sudo apt-get update。(保證ubuntu 是聯網的)。

設置使用中文語言包

在這裏插入圖片描述

Linux 下 QT 中文支持

windos移植的項目,到linux下執行,中文亂碼,如下所示

在這裏插入圖片描述
解決方法:

在main.cpp加入:
#include

在 QApplication a(argc, argv);後面加入:
QTextCodec::setCodecForTr(QTextCodec::codecForName(“UTF-8”));
QTextCodec::setCodecForLocale(QTextCodec::codecForName(“UTF-8”));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName(“UTF-8”));
重新編譯運行:
在這裏插入圖片描述

QT ARM 解決中文不顯示

下載字體:

鏈接:https://pan.baidu.com/s/1OkAc1L4Uv0loYuIEqiwPfw
提取碼:dm66

複製字庫

下載的字庫文件複製到開發板的QT字庫下;
下載的字庫文件複製到編譯環境下的QT字庫下;

我的ubuntuQT字庫在/home/ttmk/myapp/qt-4.7.3-arm/lib/fonts
我的開發板QT字庫在 use/local/qt-4.7.3-arm/lib/fonts (通過環境變量指定的,檢查/etc/profile 內關於QT字庫的環境變量來確定字庫路徑)

然後修改main.cpp

#include <QtGui/QApplication>
#include "mainwindow.h"
#include <QTextCodec>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);


    QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
    QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));       //支持Tr中文
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));//支持中文文件名顯示
    QFont font;
    font.setPointSize(120);//實際上是16的字號,但設成16卻不行
    font.setFamily(("wenquanyi"));
    font.setBold(false);

     a.setFont(font);

    MainWindow w;
    w.show();
    
    return a.exec();
}

測試結果

在這裏插入圖片描述

修改ARM 下 QT 控件的字體大小

待續

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章