2017-04-14 95 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已安裝。

相關問題