• 2192阅读
  • 10回复

要在QLabel的样式单里如何设置思源黑体 [复制链接]

上一主题 下一主题
离线lwei24
 

只看楼主 倒序阅读 楼主  发表于: 2021-05-20
各位大佬,如题,要在QLabel的样式单里设置思源黑体的字体,要怎么实现呢?
或者有什么办法可以做到吗?
我的代码如下:
   QLabel *m_labelTitle;
    m_labelTitle = new QLabel(QString("注意"), this);
    m_labelTitle->setStyleSheet("QLabel{border-radius:0px;background-repeat:no-repeat;border:none;color:#003DA6;font:bold ""SimHei""; font-size:13px ;}");
如上代码中的样式单, ""SimHei""这个好像是黑体,思源黑体好像是Source Han Sans CN,直接替换,好像字体还是没有变化?
各位大佬,请问你们是怎么给控件设置思源黑体的呢?如果是在样式单设置,要怎么做,如果不是在样式单设置,又该怎么实现呢?请各位大佬指点一下小弟,在此不胜感激了!
离线snow_man_0

只看该作者 1楼 发表于: 2021-05-21
QLabel 有setFont和font函数
离线lwei24

只看该作者 2楼 发表于: 2021-05-21
回 snow_man_0 的帖子
snow_man_0:QLabel 有setFont和font函数 (2021-05-21 01:44) 

    QFont font;
    font.setFamily("Source Han Sans CN");
    m_labelTitle->setFont(font);
请问思源黑体是这个“Source Han Sans CN”吗?为啥通过setFont后,感觉字体和黑体差不多呢?
离线20091001753

只看该作者 3楼 发表于: 2021-05-21
使用其他字体,你先要确定有没有这个字体。
要么字体已经在系统字库里了;
要么程序加载所需的字体。

如果你有该字体文件:
QFontDatabase::addApplicationFont
让程序加载这个字体先
(づ ̄ 3 ̄)づ
离线lwei24

只看该作者 4楼 发表于: 2021-05-21
回 snow_man_0 的帖子
snow_man_0:QLabel 有setFont和font函数 (2021-05-21 01:44) 

同一个字体,不同的按钮全部设置为QFont font("Source Han Sans CN", 14, QFont::Medium, false),为啥会有一个按钮与其他按钮显示不一样呢?
离线lwei24

只看该作者 5楼 发表于: 2021-05-21
回 20091001753 的帖子
20091001753:使用其他字体,你先要确定有没有这个字体。
要么字体已经在系统字库里了;
要么程序加载所需的字体。
如果你有该字体文件:
....... (2021-05-21 12:47) 

如果windows没有这个字体,是不是得先下载,再直接这样设置QFont("Source Han Sans CN", 14, QFont::Medium, false)即可呢。还是说,要在设置之前,加载QFontDatabase::addApplicationFont这个???
离线snow_man_0

只看该作者 6楼 发表于: 2021-05-21
回 lwei24 的帖子
lwei24:同一个字体,不同的按钮全部设置为QFont font("Source Han Sans CN", 14, QFont::Medium, false),为啥会有一个按钮与其他按钮显示不一样呢?
 (2021-05-21 15:25) 

不要和setStyleSheet混合用。父控件的stylesheet会影响子控件
离线snow_man_0

只看该作者 7楼 发表于: 2021-05-21
回 lwei24 的帖子
lwei24:如果windows没有这个字体,是不是得先下载,再直接这样设置QFont("Source Han Sans CN", 14, QFont::Medium, false)即可呢。还是说,要在设置之前,加载QFontDatabase::addApplicationFont这个??? (2021-05-21 15:26) 

找不到字体时,Qt会自动找一个接近的字体。帮助文档里面都有讲的
离线20091001753

只看该作者 8楼 发表于: 2021-05-21
QFontDatabase::addApplicationFont
是你需要有字体文件,加载到程序里。

然后再设置字体
(づ ̄ 3 ̄)づ
离线lwei24

只看该作者 9楼 发表于: 2021-05-24
回 snow_man_0 的帖子
snow_man_0:找不到字体时,Qt会自动找一个接近的字体。帮助文档里面都有讲的 (2021-05-21 18:18) 

这个我理解,只是目前规定要用思源黑体,有没有办法让工程一定能加载成功思源黑体呢?
离线lwei24

只看该作者 10楼 发表于: 2021-05-25
回 20091001753 的帖子
20091001753:QFontDatabase::addApplicationFont
是你需要有字体文件,加载到程序里。
然后再设置字体 (2021-05-21 20:00) 

版主请问我下载思源黑体库的otf,通过在线转成ttf,然后放在类似图片的位置:/res/fonts下,工程里但凡用到思源黑体的,我都会设置setFont它的字体,你看这样可以吗?还需不需再额外的安装字体库到windows系统?因为我想一旦应用程序写完,它可以在任意一台电脑上运行,且不用额外的再去安装思源黑体库。。。
快速回复
限100 字节
 
上一个 下一个