当前位置: 代码迷 >> QT开发 >> qt 如何让程序自带字体,就是说在操作系统上没有的字体
  详细解决方案

qt 如何让程序自带字体,就是说在操作系统上没有的字体

热度:24   发布时间:2016-04-25 03:28:31.0
qt 怎么让程序自带字体,就是说在操作系统上没有的字体?
qt 怎么让程序自带字体,就是说在操作系统上没有的字体?
还有在QFontComboBox 里的字体太多,我只想显示一部分,而且还想添加一些字体。
求高手帮忙,谢谢
------解决方案--------------------
可以使用 
int QFontDatabase::addApplicationFont ( const QString & fileName )


想要不显示 多余的字体,可以自己写一个QComboBox
而且QFontComboBox也是继承于这个类的,难道不能删么?
------解决方案--------------------
加载自定义字体
QString Widget::loadFontFamilyFromTTF()
{
    static QString font;
    static bool loaded = false;
    if(!loaded)
    {
        loaded = true;
        int loadedFontID = QFontDatabase::addApplicationFont(":/jinglei.FON");
        QStringList loadedFontFamilies = QFontDatabase::applicationFontFamilies(loadedFontID);
        if(!loadedFontFamilies.empty())
            font = loadedFontFamilies.at(0);
    }
    return font;
}

另外使用该字体
QString selfFont = loadFontFamilyFromTTF();
    QFont f(selfFont);
    f.setPixelSize(38);
    lb_Progress->setFont(f);
  相关解决方案