54 {
57
58 qreal devicePixelRatioF =
q->
view()->devicePixelRatioF();
61 const QRectF boundingWidgetRect =
q->
view()->viewConverter()->imageToWidget(boundingImageRect);
62 widgetRect = boundingWidgetRect.intersected(
q->
view()->rect());
63
64 if (widgetRect.isNull()) return;
65
67
68
69 buffer.
image = QImage((widgetRect.size()*devicePixelRatioF).toSize(), QImage::Format_ARGB32);
70 buffer.
image.setDevicePixelRatio(devicePixelRatioF);
71
72 imageRect =
q->
view()->viewConverter()->widgetToImage(widgetRect);
73
74 }
75
77
79 gc.setTransform(transform, true);
80
81 gc.save();
82 gc.setCompositionMode(QPainter::CompositionMode_Source);
83 gc.fillRect(imageRect, Qt::transparent);
84 gc.restore();
85
86
87
88 gc.setClipRect(QRectF(imageRect.topLeft(), imageRect.size()*devicePixelRatioF));
90 }
QPointer< KisView > view() const
QTransform imageToWidgetTransform() const
void paintReferences(QPainter &painter)
QRectF boundingImageRect() const
QPointF position
Top left corner of the buffer relative to the viewport.
KisWeakSharedPtr< KisReferenceImagesLayer > layer