summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Le Grand <Armin.Le.Grand@cib.de>2018-09-19 15:38:50 +0200
committerThorsten Behrens <Thorsten.Behrens@CIB.de>2018-11-27 14:53:59 +0100
commit9064507a0fae487eed0d484f55169c343770209c (patch)
treee640986c0458b030b0ec79e8952c20bd5b44830b
parentd935b25b5fc08da3b702878329a5393385b0a16d (diff)
tdf#119843 Use transformed polygon data when needed
Change-Id: I33cd8da925b9bf3d5b50a1c6ac43babedbe31d0a Reviewed-on: https://gerrit.libreoffice.org/60769 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
-rw-r--r--vcl/source/outdev/transparent.cxx17
1 files changed, 15 insertions, 2 deletions
diff --git a/vcl/source/outdev/transparent.cxx b/vcl/source/outdev/transparent.cxx
index 5a9bd599a6ff..98409984da90 100644
--- a/vcl/source/outdev/transparent.cxx
+++ b/vcl/source/outdev/transparent.cxx
@@ -292,14 +292,27 @@ void OutputDevice::DrawTransparent(
if( bDrawnOk )
{
if( mpMetaFile )
- mpMetaFile->AddAction( new MetaTransparentAction( tools::PolyPolygon( rB2DPolyPoly ), static_cast< sal_uInt16 >(fTransparency * 100.0)));
+ {
+ // tdf#119843 need transformed Polygon here
+ basegfx::B2DPolyPolygon aB2DPolyPoly(rB2DPolyPoly);
+ aB2DPolyPoly.transform(rObjectTransform);
+ mpMetaFile->AddAction(
+ new MetaTransparentAction(
+ tools::PolyPolygon(aB2DPolyPoly),
+ static_cast< sal_uInt16 >(fTransparency * 100.0)));
+ }
return;
}
}
// fallback to old polygon drawing if needed
- DrawTransparent(toPolyPolygon(rB2DPolyPoly), static_cast<sal_uInt16>(fTransparency * 100.0));
+ // tdf#119843 need transformed Polygon here
+ basegfx::B2DPolyPolygon aB2DPolyPoly(rB2DPolyPoly);
+ aB2DPolyPoly.transform(rObjectTransform);
+ DrawTransparent(
+ toPolyPolygon(aB2DPolyPoly),
+ static_cast<sal_uInt16>(fTransparency * 100.0));
}
void OutputDevice::DrawInvisiblePolygon( const tools::PolyPolygon& rPolyPoly )