diff options
author | Miklos Vajna <vmiklos@collabora.com> | 2020-05-11 16:38:12 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2020-05-11 18:47:20 +0200 |
commit | e21d522dddce2590ed435890ae8d5fe39658a71a (patch) | |
tree | 7f0cac759ed15ee1ebc53e71677bf44d5a8de06d /drawinglayer | |
parent | d8d31f74236e87ea878f7fac5538e707df5b13ca (diff) |
tdf#129916 svx: fix origin of scaled shadow
We assumed that the top left corner is the origin for scaling, but that
is not necessarily the case. The intention is that the shadow direction
can be determined from its x and y offset, and the origin is the
opposite corner of the shape.
Change-Id: I6759302767d20739b6e2be79d379740dd06f70f5
(cherry picked from commit a1dde1a85a8d1c54521a0ac6310571ffcdd4bb5a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93974
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Diffstat (limited to 'drawinglayer')
-rw-r--r-- | drawinglayer/source/tools/primitive2dxmldump.cxx | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/drawinglayer/source/tools/primitive2dxmldump.cxx b/drawinglayer/source/tools/primitive2dxmldump.cxx index 5ba531d1b1de..7fd249697ac2 100644 --- a/drawinglayer/source/tools/primitive2dxmldump.cxx +++ b/drawinglayer/source/tools/primitive2dxmldump.cxx @@ -423,9 +423,27 @@ void Primitive2dXmlDump::decomposeAndWrite( break; } + case PRIMITIVE2D_ID_SHADOWPRIMITIVE2D: + { + // ShadowPrimitive2D. + rWriter.startElement("shadow"); + drawinglayer::primitive2d::Primitive2DContainer aPrimitiveContainer; + pBasePrimitive->get2DDecomposition(aPrimitiveContainer, + drawinglayer::geometry::ViewInformation2D()); + decomposeAndWrite(aPrimitiveContainer, rWriter); + rWriter.endElement(); + break; + } + default: { - rWriter.element(OUStringToOString(sCurrentElementTag, RTL_TEXTENCODING_UTF8)); + rWriter.startElement("unhandled"); + rWriter.attribute("id", OUStringToOString(sCurrentElementTag, RTL_TEXTENCODING_UTF8)); + drawinglayer::primitive2d::Primitive2DContainer aPrimitiveContainer; + pBasePrimitive->get2DDecomposition(aPrimitiveContainer, + drawinglayer::geometry::ViewInformation2D()); + decomposeAndWrite(aPrimitiveContainer, rWriter); + rWriter.endElement(); } break; } |