Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.2, 6.3
-
None
Description
QRasterPaintEngine::drawImage() checks a number of factors to compute "exceedsPrecision", a flag to decide whether it can use the faster scale/transform functions. However, it will sometimes get it wrong, ref. the linked bug(s).
The decision logic seems to be a bit ad hoc; it is not clear what the actual limits of the underlying fast functions are. Also:
- The dimensions of "r" are checked, but not "sr" (source rect), even that is also passed
- The amount of scaling in s->matrix is checked, but not the implicit scaling from the target rect having a different size than the source
- Not clear if the same limits should apply to simple scaling as to more general transform
- upscaling is limited, but not downscaling.
Attachments
Issue Links
- relates to
-
QTBUG-93475 QPainter rotate causes pixmap rendering issues
- Closed
- resulted from
-
QTBUG-99163 QTransform rotate big image will crash
- Closed