summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorBartosz Kosiorek <gang65@poczta.onet.pl>2020-03-15 23:23:49 +0100
committerBartosz Kosiorek <gang65@poczta.onet.pl>2020-03-16 16:52:24 +0100
commite11796866f94d2f51023e6bc2b23a39af10a7d96 (patch)
treefdcd51ff923f5ec0cd592543b983dd7153b2b625 /drawinglayer
parentb0308f336a26eee83c57b6f15c0f788ccc4486f1 (diff)
tdf#124424 EMF+ Extend test options of SvgLinearGradientPrimitive2D
The extended options were used in LinearGradient tests Change-Id: I44336edda2d82f936b6e931668bdac46ee7899e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90541 Tested-by: Jenkins Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
Diffstat (limited to 'drawinglayer')
-rw-r--r--drawinglayer/source/tools/primitive2dxmldump.cxx24
1 files changed, 23 insertions, 1 deletions
diff --git a/drawinglayer/source/tools/primitive2dxmldump.cxx b/drawinglayer/source/tools/primitive2dxmldump.cxx
index e4fadac945a3..7d706849c63c 100644
--- a/drawinglayer/source/tools/primitive2dxmldump.cxx
+++ b/drawinglayer/source/tools/primitive2dxmldump.cxx
@@ -14,6 +14,7 @@
#include <tools/XmlWriter.hxx>
#include <memory>
+#include <sal/log.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
#include <drawinglayer/primitive2d/Tools.hxx>
@@ -138,7 +139,7 @@ xmlDocPtr Primitive2dXmlDump::dumpAndParse(
std::unique_ptr<sal_uInt8[]> pBuffer(new sal_uInt8[nSize + 1]);
pStream->ReadBytes(pBuffer.get(), nSize);
pBuffer[nSize] = 0;
-
+ SAL_INFO("drawinglayer", "Parsed XML: " << pBuffer.get());
xmlDocPtr pDoc = xmlParseDoc(reinterpret_cast<xmlChar*>(pBuffer.get()));
return pDoc;
@@ -252,6 +253,7 @@ void Primitive2dXmlDump::decomposeAndWrite(
double fRotate, fShearX;
if(rTextSimplePortionPrimitive2D.getTextTransform().decompose(aScale, aTranslate, fRotate, fShearX))
{
+ rWriter.attribute("width", aScale.getX());
rWriter.attribute("height", aScale.getY());
}
rWriter.attribute("x", aTranslate.getX());
@@ -314,10 +316,30 @@ void Primitive2dXmlDump::decomposeAndWrite(
{
const SvgLinearGradientPrimitive2D& rSvgLinearGradientPrimitive2D = dynamic_cast<const SvgLinearGradientPrimitive2D&>(*pBasePrimitive);
rWriter.startElement("svglineargradient");
+ basegfx::B2DPoint aStartAttribute = rSvgLinearGradientPrimitive2D.getStart();
basegfx::B2DPoint aEndAttribute = rSvgLinearGradientPrimitive2D.getEnd();
+ rWriter.attribute("startx", aStartAttribute.getX());
+ rWriter.attribute("starty", aStartAttribute.getY());
rWriter.attribute("endx", aEndAttribute.getX());
rWriter.attribute("endy", aEndAttribute.getY());
+ //rWriter.attribute("spreadmethod", (int)rSvgLinearGradientPrimitive2D.getSpreadMethod());
+ rWriter.attributeDouble("opacity", rSvgLinearGradientPrimitive2D.getGradientEntries().front().getOpacity());
+
+ rWriter.startElement("transform");
+ basegfx::B2DHomMatrix const & rMatrix = rSvgLinearGradientPrimitive2D.getGradientTransform();
+ rWriter.attributeDouble("xy11", rMatrix.get(0,0));
+ rWriter.attributeDouble("xy12", rMatrix.get(0,1));
+ rWriter.attributeDouble("xy13", rMatrix.get(0,2));
+ rWriter.attributeDouble("xy21", rMatrix.get(1,0));
+ rWriter.attributeDouble("xy22", rMatrix.get(1,1));
+ rWriter.attributeDouble("xy23", rMatrix.get(1,2));
+ rWriter.attributeDouble("xy31", rMatrix.get(2,0));
+ rWriter.attributeDouble("xy32", rMatrix.get(2,1));
+ rWriter.attributeDouble("xy33", rMatrix.get(2,2));
+ rWriter.endElement();
+
+ writePolyPolygon(rWriter, rSvgLinearGradientPrimitive2D.getPolyPolygon());
rWriter.endElement();
}