如何在Qlabel上启用抗锯齿?

10

我的QLabel看起来相当丑陋,似乎没有反锯齿。 我该如何启用此功能(假设可用)?


1
这只是一个非常猜测的想法,因为我没有Qt的经验,但设置背景颜色是否解决了问题?许多UI系统在没有背景的情况下不进行字体反锯齿处理,因为锯齿状的像素需要依赖背景颜色来混合。 - DarkDust
你可能应该说明一下你正在使用的操作系统。我的QLabel看起来很好。 - user362638
你正在使用Qt软件渲染(光栅)吗? - Thomas Vincent
2个回答

15
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);

请记住,iz 是 QFont::PreferAntialias - Exa

2

您可以在标签的字体中设置抗锯齿属性为PreferAntialias。您可以在QtCreator中或通过如下代码进行设置:

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

希望这可以帮到您。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接