summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2012-09-13 19:14:22 +0200
committerMiklos Vajna <vmiklos@suse.cz>2012-09-17 07:54:26 +0000
commit9c4d8242ef1d89f5217e092c6a23d95867f1270f (patch)
treeb64f4654f7bda2130580bc8f4c5f2af4c3dea539
parentb8f05cb9b800a66702a6fb244aefe37daedcd337 (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>
-rw-r--r--xmloff/source/draw/shapeexport2.cxx18
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);