Qt5 自定义字体修改: 字体、大小以及颜色(部分要点已实测)

您所在的位置:网站首页 华为如何调节字体颜色设置方法 Qt5 自定义字体修改: 字体、大小以及颜色(部分要点已实测)

Qt5 自定义字体修改: 字体、大小以及颜色(部分要点已实测)

2024-07-16 19:07| 来源: 网络整理| 查看: 265

目录

Qt设置字体类型及添加字体文件

QT5.9用自定义字体修改qlabel字体、大小以及颜色

设置“用户自定义字体”的简单方法:实测:采用网页html语言方法来修改 字体(font-family)。OK

================================

参考:

Qt GlobalColor 颜色、及其显示

Qt GlobalColor 颜色、及其显示-CSDN博客

================================

Qt设置字体类型及添加字体文件

Qt 添加字体文件

1.设置支持的字体 QFont font; font.setFamily("填写字体名称"); 2.通过字体文件来设置字体

字体的名称可以是自带的,也可以是外部的,如果是外部字体文件,则需要获取字体名称,使用QFontDatabase类

从字体文件的路径加载字体 ,如果返回值为-1,则加载失败 ;

获取字体的名称

int fontId = QFontDatabase::addApplicationFont(fontPath); if (fontId == -1) { qDebug("load font failed!"); } QString fontName = QFontDatabase::applicationFontFamilies(fontId).at(0);//获取字体名称 if (fontName == nullptr) { }

返回的fontName就是字体的名称,再通过setFamily()即可设置字体类型。

备 : QString和QStringList常用方法(后续补充)

.at(0) .split("#")

————————————————

版权声明:本文为CSDN博主「yikepangdaxing_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:Qt设置字体类型及添加字体文件-CSDN博客

QT5.9用自定义字体修改qlabel字体、大小以及颜色 修改字体

查阅资料发现这段修改字体代码

int font_Id = QFontDatabase::addApplicationFont(":/test.ttf");  //":/冒号表示资源根目录 QStringList font_list = QFontDatabase::applicationFontFamilies(font_Id); qDebug()label->setStyleSheet("color:#FEFEFE;");

————————————————

版权声明:本文为CSDN博主「我去啊sb」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:QT5.9用自定义字体修改qlabel字体、大小以及颜色-CSDN博客

================》》》》》》

注意:

在ui->setupUi(this);之前添加,则有可能窗口还没有实例化,因而不能设置;要看具体代码的实现方式。

在这篇转载的文章中所给出的解决方案,设置少量文字可行。

最佳的解决方法,可能是:在 Qt设计师界面,将编辑转到 “source”标签,然后,直接修改自动生成的 html编码,并另外保存为外部的独立 html文件,然后,再调入。(直接修改无法保存)。

或许采用某种刷新方法也可以,但是,没有实验。

=---------------

设置“用户自定义字体”的简单方法: 实测:采用网页html语言方法来修改 字体(font-family)。OK

Qt5 的富文本编辑器(Rich Text/多文本)窗口,无法设置非操作系统默认路径下的“用户自定义字体”;但可以“source/源”窗口中,对自动生成的html代码进行修改,从而达到这种目的。

默认生成:

p, li { white-space: pre-wrap; }

test--test--test

蓝色部分是 Qt默认生成的html代码,无法修改:非操作系统默认路径下的“用户自定义字体”。或者说 将修改保存之后,再次打开会和修改之前是一样的。

使用Qt 5默认的内嵌编辑器法,只能采用修改 ...之间(含)的部分来使用自定义字体。

##   ** 只能修改红色部分,才是有效的。也就是 在用户修改字体并保存之后,再次打开仍然有效。**

test--test--test 用户字体

      test--test--test 用户字体     

在源窗口中,采用简单的HTML的全称为超文本标记语言来进行编辑,即可。

//简单的字体修改方法: 1. 在“多文本”窗口,进行文字内容输入,以及自带的其他编辑设置。操作系统默认路径字库。 2. 然后,切换到“源”窗口,进行文字内容输入,以及“用户自定义字体”修改。操作系统默认路径字库。 3. 自定义字库文件名,以及字库文件的路径:则还有增加引入字库的代码,见本文的其他部分。用户自定义Qt路径字库。可参考:相关的 html语言的设置方法。

使用设计网页专用的“ html语言”,可以实现:

一行: 

...; //注意保存前后的区别

保存前:手动输入,只有1对...。(注意代码的位置在后,及前)

保存后:被 Qt Creator自动修改为,每对

...

之内,都包含有1对...

字库文件结构及内容的处理:

在自定义字库中,未使用的字形单元的处理,去除后,没有的字形单元,会被操作系统默认字库中的相应字形所自动替代。

参考:开源跨平台字库编辑处理软件:

Download FontForge

Download FontForge

FontForge releases are available for Windows, Mac and GNU+Linux. Developer builds are available.

Uninstalling: How to uninstall FontForge

We also provide the source code under a libre license

3. 备注:

在默认状态,在全部内容编辑完成之后,修改setupUi(this);后添加 此段代码后发现并不能实现修改字体。经过多方探索,终于发现需要重新设置文字,增加此段代码

ui->label->setText("text");

重新设置文字后字体发生改变。

2、修改字体大小

f.setPixelSize(x);

3、修改字体颜色

发现qlabel不能通过设置color去改变字体颜色,经过查阅资料,直接通过设置样式表可以改变字体颜色。

ui->label->setStyleSheet("color:#FEFEFE;"); // 代码简单

————————————————

版权声明:本文为CSDN博主「我去啊sb」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:QT5.9用自定义字体修改qlabel字体、大小以及颜色_qlabel设置字体颜色大小-CSDN博客

QFont的几个例子

QPushButton a = new QPushButton(tr("abcdefg")); a->setFont(QFont("Times",16, QFont::Bold)); a->setFont(QFont(("Arial"), 18, QFont::Bold))

参考:

Qt笔记(五十九)之Qt使用自定义字体

Qt笔记(五十九)之Qt使用自定义字体_qt 使用ttf-CSDN博客



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3