Qt设置应用程序字体

目的

由于微软雅黑字体具有版权效应, 导致实际项目中需要load其他字体, 比如说应用程序默认字体为思源黑体-Mdeium黑度。

通用做法在qrc中添加字体资源,SourceHanSansCN-Medium.ttf, 然后在main函数中动态加载字体文件。 如果后期要更换但这个文件过大的话, 建议改为动态加载绝对路径文件。

#include "SingleApplication.h"
#include <QApplication>
#include <QFontDatabase>
#include <QDebug>

int main(int argc, char *argv[])
{
   
    SingleApplication a(argc, argv);
   QString fontPath = QString("%1/font/SourceHanSansCN-Medium.ttf").arg(QCoreApplication::applicationDirPath());
     int fontId = QFontDatabase::addApplicationFont(fontdatas);
    qDebug()<< "fontId ="<< fontId<<QFontDatabase::applicationFontFamilies(fontId);
    QString sansCNFamily  = QFontDatabase::applicationFontFamilies(fontId).at(0);
    qDebug()<<"sansCNFamily  =" <<sansCNFamily ;
    font.setFamily(sansCNFamily);
    a.setFont(font);
    a.exec()
}

Note: 一定要确保对应SourceHanSansCN-Medium.ttf 文件是正确的, 不然字体加载会返回-1, 无效

相关推荐

  1. Qt设置应用程序字体

    2023-12-07 20:58:01       39 阅读
  2. Qt——设置字体样式

    2023-12-07 20:58:01       10 阅读
  3. QT】QFont字体设置

    2023-12-07 20:58:01       7 阅读
  4. Qt设置全局字体

    2023-12-07 20:58:01       36 阅读
  5. Qt设置字体加粗、下划线、斜体、字号,字体

    2023-12-07 20:58:01       32 阅读
  6. 【WPF.NET开发】将字体应用程序一起打包

    2023-12-07 20:58:01       37 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-07 20:58:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-07 20:58:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-07 20:58:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-07 20:58:01       20 阅读

热门阅读

  1. Rieds实战-Redis实现订阅发布

    2023-12-07 20:58:01       29 阅读
  2. Python高级数据结构——堆(Heap)

    2023-12-07 20:58:01       35 阅读
  3. 参数是Id,但要显示接口中的id对应的名称

    2023-12-07 20:58:01       38 阅读
  4. 二、C#笔记

    2023-12-07 20:58:01       34 阅读