summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2012-09-13 19:14:22 +0200
committerMichael Stahl <mstahl@redhat.com>2012-09-14 15:04:15 +0200
commita2959aba6affa06dc0c6fb19d0c2b73958e6b221 (patch)
treedb62355b92cdc47df7b2ec6c80435151d87c2308
parenta27a6b68b7e4d2a4674b4de59fc487b17c7c9907 (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
-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 963b3fa0732a..8d04c9d3ce2b 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);