summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2013-08-28 12:23:58 +0000
committerCaolán McNamara <caolanm@redhat.com>2013-08-28 15:37:07 +0100
commit03e73d57f1bf7da4f4a19ae1cff9c104e8fedd5e (patch)
treeb29bd94e762f79196cd44924937f5d84f13b348c /drawinglayer
parent284a03b4d2415fef9ed2172d9b18d0d5df684410 (diff)
Resolves: #i122923# optimize place to add alpha to bitmaps which need rotation
(cherry picked from commit 2178fea0941c4abb624ecddf2453f670ba68878f) Change-Id: Ib83d10bcd2d0950fbb8afe8894caa9c0b60e6a5d
Diffstat (limited to 'drawinglayer')
-rw-r--r--drawinglayer/source/processor2d/vclprocessor2d.cxx24
1 files changed, 2 insertions, 22 deletions
diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx b/drawinglayer/source/processor2d/vclprocessor2d.cxx
index 16661498958d..7418a9ccdffe 100644
--- a/drawinglayer/source/processor2d/vclprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx
@@ -435,28 +435,8 @@ namespace drawinglayer
}
}
- // decompose matrix to check for shear, rotate and mirroring
- basegfx::B2DVector aScale, aTranslate;
- double fRotate, fShearX;
-
- aLocalTransform.decompose(aScale, aTranslate, fRotate, fShearX);
-
- const bool bRotated(!basegfx::fTools::equalZero(fRotate));
- const bool bSheared(!basegfx::fTools::equalZero(fShearX));
-
- if(!aBitmapEx.IsTransparent() && (bSheared || bRotated))
- {
- // parts will be uncovered, extend aBitmapEx with a mask bitmap
- const Bitmap aContent(aBitmapEx.GetBitmap());
-#if defined(MACOSX)
- AlphaMask aMaskBmp( aContent.GetSizePixel());
- aMaskBmp.Erase( 0);
-#else
- Bitmap aMaskBmp( aContent.GetSizePixel(), 1);
- aMaskBmp.Erase(Color(COL_BLACK)); // #122758# Initialize to non-transparent
-#endif
- aBitmapEx = BitmapEx(aContent, aMaskBmp);
- }
+ // #122923# do no longer add Alpha channel here; the right place to do this is when really
+ // the own transformer is used (see OutputDevice::DrawTransformedBitmapEx).
// draw using OutputDevice'sDrawTransformedBitmapEx
mpOutputDevice->DrawTransformedBitmapEx(aLocalTransform, aBitmapEx);