summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Le Grand <Armin.Le.Grand@cib.de>2018-09-19 15:38:50 +0200
committerMike Kaganski <mike.kaganski@collabora.com>2018-09-20 15:09:13 +0200
commit3c658d7fd77eb2e7b98e70c6b8fd5f80cb6414f7 (patch)
tree522e724bde0965153517ee92ca06bbf0cee01dc3
parent4119fcda5be21a29fdd0bebaf4a97ff811a6e18d (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 )