summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2013-08-28 12:23:58 +0000
committerArmin Le Grand <alg@apache.org>2013-08-28 12:23:58 +0000
commit2178fea0941c4abb624ecddf2453f670ba68878f (patch)
tree8e7c5da564704b8c11066f15a423b7a889d97fb0 /drawinglayer
parent07302c14ad5e5983720a1d4514ff355b9930e5be (diff)
i122923 optimize place to add alpha to bitmaps which need rotation
Notes
Notes: merged as: 03e73d57f1bf7da4f4a19ae1cff9c104e8fedd5e
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 b14fdb04ab71..59ef189d4240 100644
--- a/drawinglayer/source/processor2d/vclprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx
@@ -409,28 +409,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);