53 lines
1.7 KiB
Markdown
53 lines
1.7 KiB
Markdown
## 字体文件下载
|
||
fontawesome-webfont.ttf,另一个是:pe-icon-set-weather.ttf
|
||
fontawesome-webfont.ttf 下载地址:http://fontawesome.dashgame.com/
|
||
pe-icon-set-weather.ttf 下载地址:https://www.pixeden.com/icon-fonts/the-icons-font-set-weather
|
||
在pixeden中还有许多其它的图标字体库下载:https://www.pixeden.com/icon-fonts
|
||
|
||
## Code
|
||
```
|
||
#include "mainwindow.h"
|
||
#include "ui_mainwindow.h"
|
||
#include <QFontDatabase>
|
||
|
||
MainWindow::MainWindow(QWidget *parent) :
|
||
QMainWindow(parent),
|
||
ui(new Ui::MainWindow)
|
||
{
|
||
ui->setupUi(this);
|
||
|
||
//引入图形字体
|
||
int fontId = QFontDatabase::addApplicationFont(":/image/pe-icon-set-weather.ttf"); //加入字体,并获取字体ID
|
||
QString fontName = QFontDatabase::applicationFontFamilies(fontId).at(0); //获取字体名称
|
||
QFont iconFont = QFont(fontName);
|
||
iconFont.setPixelSize(128); //设置字体大小
|
||
|
||
ui->lab_e901->setFont(iconFont); //设置Label的字体
|
||
ui->lab_e901->setText(QChar(0xe901)); //设置Label的文体
|
||
ui->lab_e901->setStyleSheet("color:red;");
|
||
|
||
QPalette blue_pe;
|
||
blue_pe.setColor(QPalette::WindowText,Qt::blue);
|
||
ui->lab_e903->setFont(iconFont);
|
||
ui->lab_e903->setText(QChar(0xe903));
|
||
ui->lab_e903->setPalette(blue_pe);
|
||
|
||
ui->lab_e905->setFont(iconFont);
|
||
ui->lab_e905->setText(QChar(0xe905));
|
||
|
||
ui->lab_e907->setFont(iconFont);
|
||
ui->lab_e907->setText(QChar(0xe907));
|
||
}
|
||
|
||
MainWindow::~MainWindow()
|
||
{
|
||
delete ui;
|
||
}
|
||
```
|
||
|
||
## QFontDatabase
|
||
QStringList QFontDatabase::families(QFontDatabase::WritingSystem writingSystem = Any) const
|
||
返回可用的字体列表。
|
||
|
||
QFont QFontDatabase::font(const QString &family, const QString &style, int pointSize) const
|
||
返回一个可用的字体对象。 |