diff options
-rw-r--r-- | vcl/source/outdev/bitmap.cxx | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/vcl/source/outdev/bitmap.cxx b/vcl/source/outdev/bitmap.cxx index 9821fa0aade5..719c9e6e0b2a 100644 --- a/vcl/source/outdev/bitmap.cxx +++ b/vcl/source/outdev/bitmap.cxx @@ -1222,7 +1222,10 @@ void OutputDevice::DrawTransformedBitmapEx( if(bAllowPreferDirectPaint && bTryDirectPaint) { - const basegfx::B2DHomMatrix aFullTransform(GetViewTransformation() * rTransformation); + // tdf#130768 CAUTION(!) using GetViewTransformation() is *not* enough here, it may + // be that mnOutOffX/mnOutOffY is used - see AOO bug 75163, mentioned at + // ImplGetDeviceTransformation declaration + const basegfx::B2DHomMatrix aFullTransform(ImplGetDeviceTransformation() * rTransformation); if(DrawTransformBitmapExDirect(aFullTransform, rBitmapEx)) { @@ -1269,7 +1272,10 @@ void OutputDevice::DrawTransformedBitmapEx( // to specify order of executions, so give bTryDirectPaint a call if(bTryDirectPaint) { - const basegfx::B2DHomMatrix aFullTransform(GetViewTransformation() * rTransformation); + // tdf#130768 CAUTION(!) using GetViewTransformation() is *not* enough here, it may + // be that mnOutOffX/mnOutOffY is used - see AOO bug 75163, mentioned at + // ImplGetDeviceTransformation declaration + const basegfx::B2DHomMatrix aFullTransform(ImplGetDeviceTransformation() * rTransformation); if(DrawTransformBitmapExDirect(aFullTransform, rBitmapEx)) { @@ -1308,7 +1314,10 @@ void OutputDevice::DrawTransformedBitmapEx( const double fOrigArea(rOriginalSizePixel.Width() * rOriginalSizePixel.Height() * 0.5); const double fOrigAreaScaled(fOrigArea * 1.44); double fMaximumArea(std::min(4500000.0, std::max(1000000.0, fOrigAreaScaled))); - basegfx::B2DHomMatrix aFullTransform(GetViewTransformation() * rTransformation); + // tdf#130768 CAUTION(!) using GetViewTransformation() is *not* enough here, it may + // be that mnOutOffX/mnOutOffY is used - see AOO bug 75163, mentioned at + // ImplGetDeviceTransformation declaration + basegfx::B2DHomMatrix aFullTransform(ImplGetDeviceTransformation() * rTransformation); if(!bMetafile) { |