Артефакты обводки QPainterPath

Я собираю QPainterPath с текстом, потом я рисую, сначала с QPainter::strokePathзатем с QPainter::fillPath, Тем не менее, штрих показывает артефакты, как показано на рисунке. Что-то я делаю не так / как это предотвратить? Должен ли я сообщить об этом как об ошибке? пример

1 ответ

Я узнал, что вместо использования strokePath а также fillPath, следующий код работает без артефактов и еще быстрее рендерится:

if(outlineEnabled) {
    p.setBrush(Qt::NoBrush);
    p.setPen(QPen(outlineColor, outlineWidth/scaleFactor, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
    for(const auto &polygon : path.toSubpathPolygons())
        p.drawPolygon(polygon, Qt::OddEvenFill);
}

p.setBrush(color);
p.setPen(Qt::NoPen);
for(const auto &polygon : path.toFillPolygons())
    p.drawPolygon(polygon, Qt::OddEvenFill);
Другие вопросы по тегам