From 30907c0bb7eb8f1f69f5527ed67fab0bba02ceeb Mon Sep 17 00:00:00 2001 From: Paul Trojahn Date: Thu, 6 Jul 2017 13:36:58 +0200 Subject: [PATCH] tdf#109067 Fix default value of rotWithShape According to the OOXML standard the default value is true, so for the export of gradients and blips it has to be set explicitly to false. Change-Id: I06f6f2a00fca88ec79e2eb956c3c780f037a9d1e Reviewed-on: https://gerrit.libreoffice.org/39973 Tested-by: Jenkins Reviewed-by: Michael Stahl --- oox/source/drawingml/fillproperties.cxx | 4 ++-- oox/source/export/drawingml.cxx | 6 +++--- sd/qa/unit/data/pptx/tdf109067.pptx | Bin 0 -> 20183 bytes sd/qa/unit/import-tests.cxx | 13 +++++++++++++ 4 files changed, 18 insertions(+), 5 deletions(-) create mode 100644 sd/qa/unit/data/pptx/tdf109067.pptx diff --git a/oox/source/drawingml/fillproperties.cxx b/oox/source/drawingml/fillproperties.cxx index 7d986709603b..81ab8c66396a 100644 --- a/oox/source/drawingml/fillproperties.cxx +++ b/oox/source/drawingml/fillproperties.cxx @@ -362,8 +362,8 @@ void FillProperties::pushToPropMap( ShapePropertyMap& rPropMap, if ( bFlipV ) nShapeRotation = -nShapeRotation; - // "rotate with shape" not set, or set to false -> do not rotate - if ( !maGradientProps.moRotateWithShape.get( false ) ) + // "rotate with shape" set to false -> do not rotate + if ( !maGradientProps.moRotateWithShape.get( true ) ) nShapeRotation = 0; if( maGradientProps.moGradientPath.has() ) diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx index b3c4f68a2607..7c50403f85b6 100644 --- a/oox/source/export/drawingml.cxx +++ b/oox/source/export/drawingml.cxx @@ -386,14 +386,14 @@ void DrawingML::WriteGradientFill( const Reference< XPropertySet >& rXPropSet ) // If we have no gradient stops that means original gradient were defined by a theme. if( aGradientStops.hasElements() ) { - mpFS->startElementNS( XML_a, XML_gradFill, FSEND ); + mpFS->startElementNS( XML_a, XML_gradFill, XML_rotWithShape, "0", FSEND ); WriteGrabBagGradientFill(aGradientStops, aGradient); mpFS->endElementNS( XML_a, XML_gradFill ); } } else { - mpFS->startElementNS( XML_a, XML_gradFill, FSEND ); + mpFS->startElementNS( XML_a, XML_gradFill, XML_rotWithShape, "0", FSEND ); WriteGradientFill(aGradient); mpFS->endElementNS( XML_a, XML_gradFill ); } @@ -1063,7 +1063,7 @@ void DrawingML::WriteBlipFill( const Reference< XPropertySet >& rXPropSet, const { SAL_INFO("oox.shape", "URL: " << sBitmapURL); - mpFS->startElementNS( nXmlNamespace , XML_blipFill, FSEND ); + mpFS->startElementNS( nXmlNamespace , XML_blipFill, XML_rotWithShape, "0", FSEND ); WriteBlip( rXPropSet, sBitmapURL, bRelPathToMedia ); diff --git a/sd/qa/unit/data/pptx/tdf109067.pptx b/sd/qa/unit/data/pptx/tdf109067.pptx new file mode 100644 index 0000000000000000000000000000000000000000..ef213774cbd8de145d7900a22630108748531b32 GIT binary patch literal 20183 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 rExpected); void testPatternImport(); @@ -230,6 +231,7 @@ public: CPPUNIT_TEST(testPatternImport); CPPUNIT_TEST(testTdf89064); CPPUNIT_TEST(testTdf108925); + CPPUNIT_TEST(testTdf109067); CPPUNIT_TEST_SUITE_END(); }; @@ -2206,6 +2208,17 @@ void SdImportTest::testTdf108925() xDocShRef->DoClose(); } +void SdImportTest::testTdf109067() +{ + sd::DrawDocShellRef xDocShRef = loadURL(m_directories.getURLFromSrc("sd/qa/unit/data/pptx/tdf109067.pptx"), PPTX); + uno::Reference< beans::XPropertySet > xShape(getShapeFromPage(0, 0, xDocShRef), uno::UNO_QUERY_THROW); + awt::Gradient gradient; + CPPUNIT_ASSERT(xShape->getPropertyValue("FillGradient") >>= gradient); + CPPUNIT_ASSERT_EQUAL(sal_Int16(450), gradient.Angle); + + xDocShRef->DoClose(); +} + CPPUNIT_TEST_SUITE_REGISTRATION(SdImportTest); CPPUNIT_PLUGIN_IMPLEMENT();