summaryrefslogtreecommitdiff
path: root/chart2
diff options
context:
space:
mode:
authorBalazs Varga <balazs.varga991@gmail.com>2019-10-22 09:43:29 +0200
committerLászló Németh <nemeth@numbertext.org>2019-11-05 15:55:34 +0100
commitef43ee69a355c0eda49d2f62540fbcf1299a59d2 (patch)
tree3067ce4b5a0ff0a01e1d53207c4207e8ffb65ce6 /chart2
parent4200b2aad00125505cb09d9589360e47b92cf25e (diff)
tdf#108065 tdf#128609 OOXML chart export: fix transparent color gradient
Linear and axial color gradients keep their solid or gradient transparencies. Change-Id: I37dfe016864bded49c767cea5c8c865455281de0 Reviewed-on: https://gerrit.libreoffice.org/81308 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'chart2')
-rw-r--r--chart2/qa/extras/chart2export.cxx28
-rw-r--r--chart2/qa/extras/data/docx/testColorGradientWithTransparancy.docxbin0 -> 25872 bytes
-rw-r--r--chart2/qa/extras/data/ods/testColorGradientWithTransparancy.odsbin0 -> 17224 bytes
3 files changed, 28 insertions, 0 deletions
diff --git a/chart2/qa/extras/chart2export.cxx b/chart2/qa/extras/chart2export.cxx
index 694ba5501043..5f2b9ee6825b 100644
--- a/chart2/qa/extras/chart2export.cxx
+++ b/chart2/qa/extras/chart2export.cxx
@@ -89,6 +89,8 @@ public:
void testChartTitlePropertiesColorFillDOCX();
void testChartTitlePropertiesGradientFillDOCX();
void testChartTitlePropertiesBitmapFillDOCX();
+ void testColorGradientWithTransparancyDOCX();
+ void testColorGradientWithTransparancyODS();
void testBarChartDataPointPropDOCX();
void testFdo83058dlblPos();
void testAutoTitleDelXLSX();
@@ -195,6 +197,8 @@ public:
CPPUNIT_TEST(testChartTitlePropertiesColorFillDOCX);
CPPUNIT_TEST(testChartTitlePropertiesGradientFillDOCX);
CPPUNIT_TEST(testChartTitlePropertiesBitmapFillDOCX);
+ CPPUNIT_TEST(testColorGradientWithTransparancyDOCX);
+ CPPUNIT_TEST(testColorGradientWithTransparancyODS);
CPPUNIT_TEST(testBarChartDataPointPropDOCX);
CPPUNIT_TEST(testFdo83058dlblPos);
CPPUNIT_TEST(testAutoTitleDelXLSX);
@@ -1219,6 +1223,30 @@ void Chart2ExportTest::testChartTitlePropertiesBitmapFillDOCX()
assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 1);
}
+void Chart2ExportTest::testColorGradientWithTransparancyDOCX()
+{
+ // Test color gradient (two color) with gradient transparency
+ load("/chart2/qa/extras/data/docx/", "testColorGradientWithTransparancy.docx");
+ xmlDocPtr pXmlDoc = parseExport("word/charts/chart", "Office Open XML Text");
+ CPPUNIT_ASSERT(pXmlDoc);
+ // Test the transparency of the first color
+ assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", "val", "60000");
+ // Test the transparency of the second color
+ assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val", "90196");
+}
+
+void Chart2ExportTest::testColorGradientWithTransparancyODS()
+{
+ // Test color gradient (two color) with simple transparency
+ load("/chart2/qa/extras/data/ods/", "testColorGradientWithTransparancy.ods");
+ xmlDocPtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open XML");
+ CPPUNIT_ASSERT(pXmlDoc);
+ // Test the transparency of the first color
+ assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr/a:alpha", "val", "60000");
+ // Test the transparency of the second color
+ assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr/a:alpha", "val", "60000");
+}
+
void Chart2ExportTest::testBarChartDataPointPropDOCX()
{
load("/chart2/qa/extras/data/docx/", "testBarChartDataPointPropDOCX.docx");
diff --git a/chart2/qa/extras/data/docx/testColorGradientWithTransparancy.docx b/chart2/qa/extras/data/docx/testColorGradientWithTransparancy.docx
new file mode 100644
index 000000000000..adc2aff042bf
--- /dev/null
+++ b/chart2/qa/extras/data/docx/testColorGradientWithTransparancy.docx
Binary files differ
diff --git a/chart2/qa/extras/data/ods/testColorGradientWithTransparancy.ods b/chart2/qa/extras/data/ods/testColorGradientWithTransparancy.ods
new file mode 100644
index 000000000000..d8a41c02c186
--- /dev/null
+++ b/chart2/qa/extras/data/ods/testColorGradientWithTransparancy.ods
Binary files differ