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
|
|||
|
返回一个可用的字体对象。
|