2011-07-19 39 views
8

My QLabels trông khá xấu xí, có vẻ như không có anti-aliasing. Làm thế nào tôi có thể kích hoạt tính năng này (giả sử nó có sẵn)?Làm cách nào để bật tính năng chống răng cưa trên nhãn Qlabel?

+1

Đây là một đoán rất hoang dã vì tôi không có kinh nghiệm với Qt, nhưng không thiết lập một màu nền giải quyết vấn đề ? Nhiều hệ thống giao diện người dùng không làm phông chữ chống răng cưa mà không có nền vì các pixel được đặt biệt hiệu phụ thuộc vào màu nền để hòa trộn vào. – DarkDust

+0

Có thể bạn nên cho biết bạn đang sử dụng hệ điều hành nào. My QLabels trông rất ổn. –

+0

Bạn đang sử dụng hiển thị phần mềm Qt (raster)? – vrince

Trả lời

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

bạn cũng có thể thay đổi cài đặt phông chữ ứng dụng, để được áp dụng cho tất cả các vật dụng bạn sử dụng ...

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

Hãy nhớ rằng iz là 'QFont :: PreferAntialias'. – Exa

2

Bạn có thể thiết lập các thuộc tính Antialisasing trong phông chữ của nhãn PreferAntialias. Bạn có thể làm điều đó trong QtCreator hoặc theo mã như thế này:

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

Hope this helps

Các vấn đề liên quan