[Libreoffice-commits] core.git: Branch 'libreoffice-6-1' - chart2/qa oox/source
chart2/qa/extras/chart2export.cxx | 23 ++ chart2/qa/extras/data/xlsx/testDataseriesOverlapStackedChart.xlsx |binary oox/source/export/chartexport.cxx | 17 ++- 3 files changed, 39 insertions(+), 1 deletion(-) New commits: commit 8a7062c02c54330c3b6be0471dbc8a74e60aa479 Author: Balazs Varga AuthorDate: Wed Aug 22 11:15:45 2018 +0200 Commit: Caolán McNamara CommitDate: Thu Aug 23 16:40:00 2018 +0200 tdf#94502 Fix overlap export of Stacked Bar Chart to *.xlsx Export the Overlap value with 100% for stacked charts, because the default overlap value of the Bar/Column chart is 0% and LibreOffice do nothing with the overlap value in Stacked Chart case, unlike the MS Office. Change-Id: If4e20b88c2b1180f68a8d2b610c407d674a8498b Reviewed-on: https://gerrit.libreoffice.org/59448 Reviewed-by: Markus Mohrhard Tested-by: Jenkins (cherry picked from commit 17c2b0af97f73b9103be982b15d7111b3980e027) Reviewed-on: https://gerrit.libreoffice.org/59497 Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara diff --git a/chart2/qa/extras/chart2export.cxx b/chart2/qa/extras/chart2export.cxx index fa5ab14f0517..a8cf4480641c 100644 --- a/chart2/qa/extras/chart2export.cxx +++ b/chart2/qa/extras/chart2export.cxx @@ -104,6 +104,7 @@ public: void testChartTitlePropertiesGradientFillXLSX(); void testChartTitlePropertiesBitmapFillXLSX(); void testBarChartDataPointPropXLSX(); +void testDataseriesOverlapStackedChartXLSX(); void testAxisCharacterPropertiesXLSX(); void testTitleCharacterPropertiesXLSX(); void testPlotVisOnlyXLSX(); @@ -186,6 +187,7 @@ public: CPPUNIT_TEST(testChartTitlePropertiesGradientFillXLSX); CPPUNIT_TEST(testChartTitlePropertiesBitmapFillXLSX); CPPUNIT_TEST(testBarChartDataPointPropXLSX); +CPPUNIT_TEST(testDataseriesOverlapStackedChartXLSX); CPPUNIT_TEST(testAxisCharacterPropertiesXLSX); CPPUNIT_TEST(testTitleCharacterPropertiesXLSX); CPPUNIT_TEST(testPlotVisOnlyXLSX); @@ -1606,6 +1608,27 @@ void Chart2ExportTest::testBarChartDataPointPropXLSX() assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:ln/a:solidFill/a:srgbClr", "val", "70ad47"); } +void Chart2ExportTest::testDataseriesOverlapStackedChartXLSX() +{ +load("/chart2/qa/extras/data/xlsx/", "testDataseriesOverlapStackedChart.xlsx"); + +// test the overlap value of a simple Stacked Column Chart +uno::Reference< chart2::XChartDocument > xChartDoc = getChartDocFromSheet( 0, mxComponent ); +checkSheetForGapWidthAndOverlap(xChartDoc, 100, 0); + +// test the overlap value of a Percent Stacked Bar Chart +xChartDoc = getChartDocFromSheet( 1, mxComponent ); +checkSheetForGapWidthAndOverlap(xChartDoc, 100, 35); + +reload("Calc Office Open XML"); + +xChartDoc = getChartDocFromSheet( 0, mxComponent ); +checkSheetForGapWidthAndOverlap(xChartDoc, 100, 100); + +xChartDoc = getChartDocFromSheet( 1, mxComponent ); +checkSheetForGapWidthAndOverlap(xChartDoc, 100, 100); +} + void Chart2ExportTest::testAxisCharacterPropertiesXLSX() { load("/chart2/qa/extras/data/xlsx/", "axis_character_properties.xlsx"); diff --git a/chart2/qa/extras/data/xlsx/testDataseriesOverlapStackedChart.xlsx b/chart2/qa/extras/data/xlsx/testDataseriesOverlapStackedChart.xlsx new file mode 100755 index ..ba1c526b41ca Binary files /dev/null and b/chart2/qa/extras/data/xlsx/testDataseriesOverlapStackedChart.xlsx differ diff --git a/oox/source/export/chartexport.cxx b/oox/source/export/chartexport.cxx index 3a97ee186560..43fe63a51554 100644 --- a/oox/source/export/chartexport.cxx +++ b/oox/source/export/chartexport.cxx @@ -1498,9 +1498,24 @@ void ChartExport::exportBarChart( const Reference< chart2::XChartType >& xChartT if( aBarPositionSequence.getLength() ) { sal_Int32 nOverlap = aBarPositionSequence[0]; -pFS->singleElement( FSNS( XML_c, XML_overlap ), +// Stacked/Percent Bar/Column chart Overlap-workaround +// Export the Overlap value with 100% for stacked charts, +// because the default overlap value of the Bar/Column chart is 0% and +// LibreOffice do nothing with the overlap value in Stacked charts case, +// unlike the MS Office, which is interpreted differently. +if( ( mbStacked || mbPercent ) && nOverlap != 100 ) +{ +nOverlap = 100; +pFS->singleElement( FSNS( XML_c, XML_overlap ), +XML_val, I32S( nOverlap ), +FSEND ); +} +else // Normal bar chart +{ +pFS->singleElement( FSNS( XML_c, XML_overlap ), XML_val, I32S( nOverlap ), FSEND ); +} } }
[Libreoffice-commits] core.git: Branch 'libreoffice-6-1' - chart2/qa oox/source
chart2/qa/extras/chart2export.cxx | 40 +++ chart2/qa/extras/data/docx/testBarChartDataPointPropDOCX.docx |binary chart2/qa/extras/data/xlsx/testBarChartDataPointPropXLSX.xlsx |binary oox/source/export/chartexport.cxx | 51 ++ 4 files changed, 91 insertions(+) New commits: commit 15035b98dc694bde4c4073fa75bdd2ce9d7e6670 Author: Balazs Varga AuthorDate: Thu Aug 9 00:06:47 2018 +0200 Commit: Bartosz Kosiorek CommitDate: Fri Aug 10 15:36:52 2018 +0200 tdf#96469 Export Data Point properties in Charts on DOCX/XLSX If the color or other property of a datapoint in the chart deviates from the dataseries property, this patch will write it into a separate dPt tag and fixing the lost properies during OOXML export. Change-Id: I3d975675ac3691fcafe76de16e46851561eb2807 Reviewed-on: https://gerrit.libreoffice.org/58806 Reviewed-by: Bartosz Kosiorek Tested-by: Jenkins diff --git a/chart2/qa/extras/chart2export.cxx b/chart2/qa/extras/chart2export.cxx index ffbe040a42dd..fa5ab14f0517 100644 --- a/chart2/qa/extras/chart2export.cxx +++ b/chart2/qa/extras/chart2export.cxx @@ -85,6 +85,7 @@ public: void testChartTitlePropertiesColorFillDOCX(); void testChartTitlePropertiesGradientFillDOCX(); void testChartTitlePropertiesBitmapFillDOCX(); +void testBarChartDataPointPropDOCX(); void testFdo83058dlblPos(); void testAutoTitleDelXLSX(); void testDispBlanksAsXLSX(); @@ -102,6 +103,7 @@ public: void testChartTitlePropertiesColorFillXLSX(); void testChartTitlePropertiesGradientFillXLSX(); void testChartTitlePropertiesBitmapFillXLSX(); +void testBarChartDataPointPropXLSX(); void testAxisCharacterPropertiesXLSX(); void testTitleCharacterPropertiesXLSX(); void testPlotVisOnlyXLSX(); @@ -165,6 +167,7 @@ public: CPPUNIT_TEST(testChartTitlePropertiesColorFillDOCX); CPPUNIT_TEST(testChartTitlePropertiesGradientFillDOCX); CPPUNIT_TEST(testChartTitlePropertiesBitmapFillDOCX); +CPPUNIT_TEST(testBarChartDataPointPropDOCX); CPPUNIT_TEST(testFdo83058dlblPos); CPPUNIT_TEST(testAutoTitleDelXLSX); CPPUNIT_TEST(testDispBlanksAsXLSX); @@ -182,6 +185,7 @@ public: CPPUNIT_TEST(testChartTitlePropertiesColorFillXLSX); CPPUNIT_TEST(testChartTitlePropertiesGradientFillXLSX); CPPUNIT_TEST(testChartTitlePropertiesBitmapFillXLSX); +CPPUNIT_TEST(testBarChartDataPointPropXLSX); CPPUNIT_TEST(testAxisCharacterPropertiesXLSX); CPPUNIT_TEST(testTitleCharacterPropertiesXLSX); CPPUNIT_TEST(testPlotVisOnlyXLSX); @@ -1101,6 +1105,24 @@ void Chart2ExportTest::testChartTitlePropertiesBitmapFillDOCX() assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 1); } +void Chart2ExportTest::testBarChartDataPointPropDOCX() +{ +load("/chart2/qa/extras/data/docx/", "testBarChartDataPointPropDOCX.docx"); +xmlDocPtr pXmlDoc = parseExport("word/charts/chart", "Office Open XML Text"); +CPPUNIT_ASSERT(pXmlDoc); + +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:varyColors", "val", "0"); + +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:idx", "val", "1"); +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:gradFill/a:gsLst/a:gs[1]/a:srgbClr", "val", "f6f8fc"); +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:gradFill/a:gsLst/a:gs[2]/a:srgbClr", "val", "c7d5ed"); +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:spPr/a:ln/a:solidFill/a:srgbClr", "val", "70ad47"); + +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:idx", "val", "2"); +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:solidFill/a:srgbClr", "val", "ff"); +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[2]/c:spPr/a:ln/a:solidFill/a:srgbClr", "val", "00"); +} + void Chart2ExportTest::testBarChartRotation() { load ("/chart2/qa/extras/data/docx/", "barChartRotation.docx"); @@ -1566,6 +1588,24 @@ void Chart2ExportTest::testChartTitlePropertiesBitmapFillXLSX() assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:title/c:spPr/a:ln/a:noFill", 1); } +void Chart2ExportTest::testBarChartDataPointPropXLSX() +{ +load("/chart2/qa/extras/data/xlsx/", "testBarChartDataPointPropXLSX.xlsx"); +xmlDocPtr pXmlDoc = parseExport("xl/charts/chart", "Calc Office Open XML"); +CPPUNIT_ASSERT(pXmlDoc); + +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:varyColors", "val", "0"); + +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dPt[1]/c:idx", "val", "1"); +assertXPath(pXmlDoc,
[Libreoffice-commits] core.git: Branch 'libreoffice-6-1' - chart2/qa oox/source
chart2/qa/extras/chart2export.cxx |1 + oox/source/export/chartexport.cxx |2 ++ 2 files changed, 3 insertions(+) New commits: commit 58284e26fa604edc02b7598cb77a5b272c288320 Author: Justin Luth Date: Thu Jun 28 21:21:29 2018 +0300 tdf#115945 oox export: data label writeRunProperties DataLabel font was always returning to the default - black. Change-Id: I6c72a8daa699394b36f69fc54e0ba042f0255c18 Reviewed-on: https://gerrit.libreoffice.org/56616 Tested-by: Jenkins Reviewed-by: Justin Luth Reviewed-by: Szymon Kłos (cherry picked from commit ae2fd281e046b2199ef44777b84518cd3abb2952) Reviewed-on: https://gerrit.libreoffice.org/56725 Reviewed-by: Christian Lohmaier diff --git a/chart2/qa/extras/chart2export.cxx b/chart2/qa/extras/chart2export.cxx index b77aeda6755b..da15d321a881 100644 --- a/chart2/qa/extras/chart2export.cxx +++ b/chart2/qa/extras/chart2export.cxx @@ -1583,6 +1583,7 @@ void Chart2ExportTest::testCustomDataLabel() load("/chart2/qa/extras/data/pptx/", "tdf115107.pptx"); xmlDocPtr pXmlDoc = parseExport("ppt/charts/chart1", "Impress MS PowerPoint 2007 XML"); CPPUNIT_ASSERT(pXmlDoc); +assertXPath(pXmlDoc, "/c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser/c:dLbls/c:dLbl[1]/c:txPr/a:p/a:pPr/a:defRPr/a:solidFill/a:srgbClr", "val", "404040"); Reference xChartDoc(getChartDocFromDrawImpress(0, 0), uno::UNO_QUERY); CPPUNIT_ASSERT(xChartDoc.is()); diff --git a/oox/source/export/chartexport.cxx b/oox/source/export/chartexport.cxx index bd91390d5f3c..16ae6a190ea3 100644 --- a/oox/source/export/chartexport.cxx +++ b/oox/source/export/chartexport.cxx @@ -3180,10 +3180,12 @@ void ChartExport::exportDataLabels( // Individual label property that overwrites the baseline. pFS->startElement(FSNS(XML_c, XML_dLbl), FSEND); pFS->singleElement(FSNS(XML_c, XML_idx), XML_val, I32S(nIdx), FSEND); +exportTextProps( xPropSet ); writeLabelProperties(pFS, this, xLabelPropSet, aParam); pFS->endElement(FSNS(XML_c, XML_dLbl)); } +exportTextProps( xPropSet ); // Baseline label properties for all labels. writeLabelProperties(pFS, this, xPropSet, aParam); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits