前言
Qt中加入字体是一个很常见的需求,实现方法也不唯一,笔者记录下常用的几种方法
一、导入字体的常见需求
1.为显示中文
一些特别的平台发布时,平台本身是没有安装中文字体的,此时只想导入一种中文字体,以显示中文。
如android、WebAssembly、linux系统,经常会缺少中文字体
2.为显示特殊符号
在某些条件受限时,经常无UI设计的图标,此时可以使用图标字体。很多工具或平台都支持,将已有的图标导入到字体文件中,使用时和字体相同,只是显示的是图标,如Fontello - icon fonts generator
3.其他
其他情况就不解释了,大部分是功能上的需求。
二、常见使用方法
1.从C++中导入
Qt中有现成的导入函数:QFontDatabase::addApplicationFont()
只要把字体文件导入就可以了
QFontDatabase::addApplicationFont(QStringLiteral(":/font/HarmonyOS_Sans_SC_Black.ttf"));
导入后,可以在需要用到的地方,直接将QFont的family属性设置成对应名字就可以。
若是需要设置为默认字体,可以在main()函数中,添加如下代码
int fontId = QFontDatabase::addApplicationFont(QStringLiteral(":/font/HarmonyOS_Sans_SC_Black.ttf"));
QStringList fontFamilies = QFontDatabas

本文介绍在Qt中导入字体的方法,包括解决中文显示问题、图标字体使用等需求,并提供从C++和QML导入字体的具体步骤。

2691

被折叠的 条评论
为什么被折叠?



