查看完整版本: [-- zhengtianzuo系列-Qt使用FontAwesome图标字体库 --]

QTCN开发网 -> Qt代码秀 -> zhengtianzuo系列-Qt使用FontAwesome图标字体库 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

zhengtianzuo 2017-11-11 10:08

zhengtianzuo系列-Qt使用FontAwesome图标字体库



官网: http://fontawesome.io/
中文网: http://www.fontawesome.com.cn/
GitHub: https://github.com/FortAwesome/Font-Awesome

首先我们从官网或者GitHub上下载到最新的源码

在解压目录中找到 fonts\fontawesome-webfont.ttf 拷贝出来
这个是我们Qt程序使用FontAwesome图标字体库时需要加载的
然后在css目录下找到font-awesome.css这个是我们开发时需要对字体编码进行查找用的

在官网的 http://fontawesome.io/icons/ 页面可以查看所有的图标, 挑选我们需要的
使用时比如我们需要用这个心形的图标


其名称为heart, 那么在font-awesome.css中我们通过查找就可以得到它对应的字体编码


其字体编码为 f004
后面我们代码中会用到这个

Qt工程中使用:

```
    // 添加字体文件
    int fontId = QFontDatabase::addApplicationFont(":/Font/fontawesome-webfont.ttf");
    QStringList fontFamilies = QFontDatabase::applicationFontFamilies(fontId);
    qDebug() << "fontFamilies.size() " << fontFamilies.size();

    // 创建字体
    QFont font;
    font.setFamily(fontFamilies.at(0));
    font.setPointSize(20);

    // 设置字体及样式、大小
    ui->ZoomInLabel->setFont(font);
    ui->ZoomInLabel->setText(QChar(0xf00e));
    ui->ZoomInLabel->setStyleSheet("color: rgb(0, 160, 230);");

    font.setPointSize(30);
    ui->ZoomOutLabel->setFont(font);
    ui->ZoomOutLabel->setText(QChar(0xf004));
    ui->ZoomOutLabel->setStyleSheet("color: green;");
```

其中设置的本文字符QChar(0xf004) 就是我们刚才heart的字体编码f004



需要完整代码请访问 QtWidgetsExamples

hanheyfon 2018-04-11 08:56
    

big_mouse 2020-04-23 09:11


查看完整版本: [-- zhengtianzuo系列-Qt使用FontAwesome图标字体库 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled