QT4 无法显示中文 解决(ubuntu 14)

说明:

  1. 我采用的是qt-everywhere-opensource-src-4.8.5.tar.gz,configure->make->make install的方式安装的,发现中文无法显示,直接空白。
  • 并不清楚系统会不会影响,推荐先装给系统上中文输入法。
    方法:System Setting... -> Language Support -> Install/Remove Language... -> Chinese Simplified

解决:

  1. 在main代码上加上几句话试试。
    QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
  • 如果不行,很有可能是安装的qt的问题。
    安装2个依赖,再配置。配置的时候加上 -fontconfig。
    sudo su
    apt-get install libfontconfig1-dev
    apt-get install libfreetype6-dev
    ./configure -fontconfig && make && make install //此命令在qt-everywhere-opensource-src-4.8.5目录下运行。
  • pc上用的字库很可能arm上没有,导致arm上显示得很奇怪,下载一个字库放在环境,然后代码中调用字库,可以让pc跟arm共享同样的字库。
    Widget w;
    w.setFont(QFont("zhenghei",14,QFont::Normal));//这行是关键,没有这行是显示不了中文的。
    文泉驿官方网下载正黑字库。解压,把 wqy-zenhei.ttc 改为 zhenghei.ttc ,然后把这个ttc放到 /opt/qt-4.5/lib/fonts(lib下没有 fonts 就 mkdir 一个),再在main中加入一句话:
    w.setFont(QFont("zhenghei", 14, QFont::Normal));
  • 完成。


参考:

  1. 新装Qt4.7无法显示中文解决方法
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容