Я могу нарисовать QPixmap
просто хорошо:
QPainter painter;
painter.drawPixmap(x, y, w, h, my_pixmap);
И я также могу нарисовать круг с:
painter.drawArc(x, y, w, h, a, alen);
Теперь я хочу объединить эти два; мое растровое изображение не всегда может быть кругом (= прозрачные углы), поэтому я не могу просто нарисовать все растровое изображение на экране.
Это означает, что мне нужно рисовать только центр моего растрового изображения.
Вот изображение, чтобы сделать его более понятным:
Это возможно?
Да, вы должны быть в состоянии сделать это, установив путь обрезки на художнике. Примерно так должно работать:
QPainterPath path;
path.addEllipse(x, y, w, h);
painter.setClipPath(path);
painter.drawPixmap(x, y, w, h, my_pixmap);
Других решений пока нет …