diff options
author | Bartosz Kosiorek <gang65@poczta.onet.pl> | 2017-11-07 22:34:46 +0100 |
---|---|---|
committer | Bartosz Kosiorek <gang65@poczta.onet.pl> | 2017-11-09 13:25:11 +0100 |
commit | 4418372084001ae6ae8153bf79a551a5bd5b40d4 (patch) | |
tree | 04efb31d4e892b26b65dbc50feb19c41c091f2be /drawinglayer | |
parent | e49aa9303f047d7610b2b8334404db120d7bc8db (diff) |
tdf#113707 EMF+ Add support for ResetClip record
Change-Id: I00ab6ac7a5e157cff469c2afd5e14d5f06f01bd0
Reviewed-on: https://gerrit.libreoffice.org/44432
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
Diffstat (limited to 'drawinglayer')
-rw-r--r-- | drawinglayer/source/tools/emfphelperdata.cxx | 11 | ||||
-rw-r--r-- | drawinglayer/source/tools/emfphelperdata.hxx | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/drawinglayer/source/tools/emfphelperdata.cxx b/drawinglayer/source/tools/emfphelperdata.cxx index 77f5d8f0c912..d791eb034309 100644 --- a/drawinglayer/source/tools/emfphelperdata.cxx +++ b/drawinglayer/source/tools/emfphelperdata.cxx @@ -85,6 +85,7 @@ namespace emfplushelper case EmfPlusRecordTypeTranslateWorldTransform: return "EmfPlusRecordTypeTranslateWorldTransform"; case EmfPlusRecordTypeScaleWorldTransform: return "EmfPlusRecordTypeScaleWorldTransform"; case EmfPlusRecordTypeSetPageTransform: return "EmfPlusRecordTypeSetPageTransform"; + case EmfPlusRecordTypeResetClip: return "EmfPlusRecordTypeResetClip"; case EmfPlusRecordTypeSetClipRect: return "EmfPlusRecordTypeSetClipRect"; case EmfPlusRecordTypeSetClipPath: return "EmfPlusRecordTypeSetClipPath"; case EmfPlusRecordTypeSetClipRegion: return "EmfPlusRecordTypeSetClipRegion"; @@ -1516,6 +1517,16 @@ namespace emfplushelper "EMF+\t " << maWorldTransform); break; } + case EmfPlusRecordTypeResetClip: + { + SAL_INFO("drawinglayer", "EMF+ EmfPlusRecordTypeResetClip"); + // We don't need to read anything more, as Size needs to be set 0x0000000C + // and DataSize must be set to 0. + + // Resets the current clipping region for the world space to infinity. + HandleNewClipRegion(::basegfx::B2DPolyPolygon(), mrTargetHolders, mrPropertyHolders); + break; + } case EmfPlusRecordTypeSetClipRect: { int combineMode = (flags >> 8) & 0xf; diff --git a/drawinglayer/source/tools/emfphelperdata.hxx b/drawinglayer/source/tools/emfphelperdata.hxx index 516a8e4e6a3f..71aa0758544f 100644 --- a/drawinglayer/source/tools/emfphelperdata.hxx +++ b/drawinglayer/source/tools/emfphelperdata.hxx @@ -82,7 +82,7 @@ namespace emfplushelper #define EmfPlusRecordTypeScaleWorldTransform 0x402E #define EmfPlusRecordTypeRotateWorldTransform 0x402F #define EmfPlusRecordTypeSetPageTransform 0x4030 - //TODO EmfPlusRecordTypeResetClip 0x4031 + #define EmfPlusRecordTypeResetClip 0x4031 #define EmfPlusRecordTypeSetClipRect 0x4032 #define EmfPlusRecordTypeSetClipPath 0x4033 #define EmfPlusRecordTypeSetClipRegion 0x4034 |