2017-04-14 60 views
2

我在我的.qrc资源文件中添加了一个字体名称“:font/Oswald-Regular.ttf”。我想在我的Qt样式表中为所有QLabel使用它。如何在Qt样式表中使用嵌入的字体?

这是宋体代码:

QLabel 
{ 
color: white; 
font: 10pt "Arial"; 
} 
+2

看看['QFontDatabase :: addApplicationFont'](http://doc.qt.io/qt-5/qfontdatabase.html#addApplicationFont)。 –

回答

2

字体添加到字体数据库在main

QFontDatabase::addApplicationFont(":/fonts/Oswald-Regular.ttf"); 

您可能要检查函数的返回值(0表示成功)和/或数据库中可用的字体:

QFontDatabase db; 
    for(int i=0; i<db.families().size(); i++) 
    { 
    qDebug() << db.families().at(i); 
    } 

并查看是否“Oswald”出现在列表中。

设置样式表的标签父窗口部件,从编辑变化样式对话框:

QLabel { color: black; font: 24pt 'Oswald'; } 
在窗口部件的构造

或编程:

setStyleSheet("QLabel { color: black; font: 24pt 'Oswald'; }"); 

如果在Unix/X11平台上,可以肯定的fontconfig已安装。

相关问题