QT中使用SVG的一种方法(SVG转TTF)

今天跟大家分享一个关于QT中使用SVG的一种方法(并不全部适用,请大家阅读后,在决定是否使用此方法)。

话不多说,上栗子:

比如:如图1:SVG路劲图,当我们在网页上或者其他方法知道了一个SVG的path路劲,我们可以将这个路径复制出来。】

QT中使用SVG的一种方法(SVG转TTF)

 

                              图1:SVG路劲图

 

 

接下来我们打开你的svg文件记得用notepad打开,方便加自己的图标路径,将图1复制出来的路劲粘贴到svg文件d= 的后面,保存(注意如果没有svg文件可以自己新建一个文本文件自己改下后缀)

QT中使用SVG的一种方法(SVG转TTF)

 

打开一个在线转换网址svg转成FONT(https://font.qqe2.com/)导入我们刚刚保存的svg文件,导入以后你会看到入下图的想过,自己的图标就显示出来了,然后就可以导出为font字体文件了。这样我们就可以放在QT中使用了。

QT中使用SVG的一种方法(SVG转TTF)

 

将生产的ttf文件添加到自己得QT项目中:

QT中使用SVG的一种方法(SVG转TTF)

 

接下来就可以在QT中使用了,我们上代码:

int fontId = QFontDatabase::addApplicationFont(":/iconfont.ttf");  //加入字体,并获取字体ID

QString fontName = QFontDatabase::applicationFontFamilies(fontId).at(0);    //获取字体名称

QFont iconFont = QFont(fontName);

 

iconFont.setPixelSize(30);

ui->Icon_label->setFont(iconFont);

ui->Icon_label->setText(QChar(0xe6cf));    //此编号为图2 中红框标出的编号

同样这段代码同样适用于QT使用ttf字体文件。

 

我们最后来看一下效果图、

QT中使用SVG的一种方法(SVG转TTF)

 

这种方法适用于在label和button中插入图标,希望大家喜欢,也希望与我这个小菜鸟多交流。

QQ:847281464

 

也希望大家可以打赏一下小弟,小弟想筹款买一块F429的板子,继续学习,大家看着给,几毛不嫌少。

QT中使用SVG的一种方法(SVG转TTF)