summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorBartosz Kosiorek <gang65@poczta.onet.pl>2017-11-14 00:10:47 +0100
committerMark Page <aptitude@btconnect.com>2017-11-14 08:05:23 +0100
commit2796b7e298b7c536a87fdf9502e1a6093a041e93 (patch)
treeabfde57c64001f6f25a66e33700cdc81f1f04326 /drawinglayer
parent4de9091c6235bdb080cee9c79592c3f0f5ef0fcc (diff)
tdf#113758 EMF+ Add mapping of clipped region to the world space.
OffsetClip record applies a translation transform on the current clipping region for the world space. Change-Id: I5d23f6aac944e4f23ea7c51e47fb551a20166446 Reviewed-on: https://gerrit.libreoffice.org/44699 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mark Page <aptitude@btconnect.com>
Diffstat (limited to 'drawinglayer')
-rw-r--r--drawinglayer/source/tools/emfphelperdata.cxx13
1 files changed, 10 insertions, 3 deletions
diff --git a/drawinglayer/source/tools/emfphelperdata.cxx b/drawinglayer/source/tools/emfphelperdata.cxx
index a1cdab8559d5..6d9a8a499f8c 100644
--- a/drawinglayer/source/tools/emfphelperdata.cxx
+++ b/drawinglayer/source/tools/emfphelperdata.cxx
@@ -1593,13 +1593,20 @@ namespace emfplushelper
basegfx::B2DPolyPolygon aPolyPolygon(
mrPropertyHolders.Current().getClipPolyPolygon());
+
+ SAL_INFO("drawinglayer",
+ "EMF+\t PolyPolygon before translate: " << aPolyPolygon);
+
+ basegfx::B2DPoint aOffset = Map(dx, dy);
basegfx::B2DHomMatrix transformMatrix;
- transformMatrix.set(0, 2, dx);
- transformMatrix.set(1, 2, dy);
+ transformMatrix.set(0, 2, aOffset.getX());
+ transformMatrix.set(1, 2, aOffset.getY());
aPolyPolygon.transform(transformMatrix);
+ SAL_INFO("drawinglayer",
+ "EMF+\t PolyPolygon after translate: " << aPolyPolygon <<
+ ", mapped offset x" << aOffset.getX() << ", mapped offset y" << aOffset.getY());
HandleNewClipRegion(aPolyPolygon, mrTargetHolders, mrPropertyHolders);
-
break;
}
case EmfPlusRecordTypeDrawDriverString: