summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorPatrick Jaap <patrick.jaap@tu-dresden.de>2017-08-22 12:31:15 +0200
committerThorsten Behrens <Thorsten.Behrens@CIB.de>2017-08-24 17:13:26 +0200
commit8d1dc9a662d2e1bc833d5488f3f0013f98e7f3fd (patch)
tree57135fc8b4757ab72043ca08bbedf90f904952d3 /test
parent1098fba99acb8c8cc7e87c55ece12ef175593147 (diff)
emfio: unit test for the EMF+ renderer
Two unit tests, which test the EMF+ records DrawString and DrawLine independently. To this end, a fixed view decomposition of metafiles is implemented. The chosen primitives should be optimal, even for future extensions of the EMF+ parser. Change-Id: I12672d3b294ff0fdae63c7a5ce211517ef8f763c Reviewed-on: https://gerrit.libreoffice.org/41425 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'test')
-rw-r--r--test/source/primitive2dxmldump.cxx18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/source/primitive2dxmldump.cxx b/test/source/primitive2dxmldump.cxx
index 6523c4c0c971..563fb75acc19 100644
--- a/test/source/primitive2dxmldump.cxx
+++ b/test/source/primitive2dxmldump.cxx
@@ -26,6 +26,9 @@
#include <drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx>
#include <drawinglayer/primitive2d/objectinfoprimitive2d.hxx>
#include <drawinglayer/primitive2d/svggradientprimitive2d.hxx>
+#include <drawinglayer/primitive2d/metafileprimitive2d.hxx>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
+
#include <drawinglayer/attribute/lineattribute.hxx>
#include <drawinglayer/attribute/fontattribute.hxx>
@@ -190,6 +193,8 @@ void Primitive2dXmlDump::decomposeAndWrite(
{
rWriter.attribute("height", aScale.getY());
}
+ rWriter.attribute("x", aTranslate.getX());
+ rWriter.attribute("y", aTranslate.getY());
rWriter.attribute("text", rTextSimplePortionPrimitive2D.getText());
rWriter.attribute("fontcolor", convertColorToString(rTextSimplePortionPrimitive2D.getFontColor()));
@@ -244,6 +249,19 @@ void Primitive2dXmlDump::decomposeAndWrite(
}
break;
+ case PRIMITIVE2D_ID_METAFILEPRIMITIVE2D:
+ {
+ const MetafilePrimitive2D& rMetafilePrimitive2D = dynamic_cast<const MetafilePrimitive2D&>(*pBasePrimitive);
+ rWriter.startElement("metafile");
+ drawinglayer::primitive2d::Primitive2DContainer aPrimitiveContainer;
+ // since the graphic is not rendered in a document, we do not need a concrete view information
+ rMetafilePrimitive2D.get2DDecomposition(aPrimitiveContainer, drawinglayer::geometry::ViewInformation2D());
+ decomposeAndWrite(aPrimitiveContainer,rWriter);
+ rWriter.endElement();
+ }
+
+ break;
+
default:
{
rWriter.element(OUStringToOString(sCurrentElementTag, RTL_TEXTENCODING_UTF8));