2011-07-19 54 views
8

我的QLabels看起來相當難看,似乎沒有反鋸齒。我如何啓用此功能(假設它可用)?如何在Qlabel上啓用反鋸齒功能?

+1

這是一個非常大膽猜測,因爲我沒有使用Qt的經驗,但並設置背景顏色解決問題?許多UI系統不會在沒有背景的情況下進行字體反鋸齒,因爲別名像素取決於背景顏色來融入。 – DarkDust

+0

你可能應該告訴你正在使用的操作系統。我的QLabels看起來很好。 – 2011-07-19 11:29:51

+0

你使用的是Qt軟件渲染(光柵)嗎? – vrince

回答

10
QLabel * l = new QLabel(); 
QFont f=l->font(); 
f.setStyleStrategy(QFont::PreferAntialias); 
l->setFont(f); 

你也可以改變應用程序的字體設置,將應用於您使用的所有部件...

QFont f=QApplication::font(); 
f.setStyleStrategy(QFont::PreferAntialias); 
QApplication::setFont(f); 
+0

請記住,iz是'QFont :: PreferAntialias'。 – Exa

2

您可以設置標籤的字體PreferAntialias的Antialisasing屬性。 你可以做到這一點在QtCreator或通過這樣的代碼:

QFont f("Times", 50); 
f.setStyleStrategy(QFont::PreferAntialias); 
ui->label->setFont(f); 

希望這有助於