我将文本设置为QGraphicsSimpleTextItem
中的QGraphicsItem
,并且文本抗锯齿功能似乎无效或工作非常糟糕。我试着设置
font.setStyleStrategy(QFont::StyleStrategy::PreferAntialias);
并有覆盖
void MyClass::paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget)
{
painter->setRenderHints(painter->renderHints() | QPainter::Antialiasing | QPainter::TextAntialiasing | QPainter::HighQualityAntialiasing);
QGraphicsItem::paint(painter, option, widget);
}
但文字仍然相同。
答案 0 :(得分:1)
我的paint()
功能是在 OpenGL 的帮助下完成的。我刚刚创建了表面格式而没有支持多重采样用于抗锯齿。我不得不写:
QSurfaceFormat sf = QSurfaceFormat::defaultFormat();
sf.setSamples(4);