diff options
author | Michael Stahl <mstahl@redhat.com> | 2012-09-13 19:14:22 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2012-09-17 07:54:26 +0000 |
commit | 9c4d8242ef1d89f5217e092c6a23d95867f1270f (patch) | |
tree | b64f4654f7bda2130580bc8f4c5f2af4c3dea539 /xmloff | |
parent | b8f05cb9b800a66702a6fb244aefe37daedcd337 (diff) |
fdo#49678: ODF export: add svg:viewBox to draw:connector
This attribute is mandatory; for the given bugdoc various
svg:viewBox="0 0 2500 1" are now written.
Change-Id: I7ea2294e0796546dcbb245993c01c2dd2b2a755a
(cherry picked from commit a2959aba6affa06dc0c6fb19d0c2b73958e6b221)
Reviewed-on: https://gerrit.libreoffice.org/616
Reviewed-by: Miklos Vajna <vmiklos@suse.cz>
Tested-by: Miklos Vajna <vmiklos@suse.cz>
Diffstat (limited to 'xmloff')
-rw-r--r-- | xmloff/source/draw/shapeexport2.cxx | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/xmloff/source/draw/shapeexport2.cxx b/xmloff/source/draw/shapeexport2.cxx index 00856c83572a..56a5e6783f21 100644 --- a/xmloff/source/draw/shapeexport2.cxx +++ b/xmloff/source/draw/shapeexport2.cxx @@ -1452,6 +1452,24 @@ void XMLShapeExport::ImpExportConnectorShape( } } + // get matrix + ::basegfx::B2DHomMatrix aMatrix; + ImpExportNewTrans_GetB2DHomMatrix(aMatrix, xProps); + + // decompose and correct about pRefPoint + ::basegfx::B2DTuple aTRScale; + double fTRShear(0.0); + double fTRRotate(0.0); + ::basegfx::B2DTuple aTRTranslate; + ImpExportNewTrans_DecomposeAndRefPoint(aMatrix, aTRScale, fTRShear, + fTRRotate, aTRTranslate, pRefPoint); + + // fdo#49678: create and export ViewBox + awt::Point aPoint(0, 0); + awt::Size aSize(FRound(aTRScale.getX()), FRound(aTRScale.getY())); + SdXMLImExViewBox aViewBox(0, 0, aSize.Width, aSize.Height); + mrExport.AddAttribute(XML_NAMESPACE_SVG, XML_VIEWBOX, aViewBox.GetExportString()); + // write connector shape. Add Export later. sal_Bool bCreateNewline( (nFeatures & SEF_EXPORT_NO_WS) == 0 ); // #86116#/#92210# SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DRAW, XML_CONNECTOR, bCreateNewline, sal_True); |