From 136ab631a3d2f7cfa22ca7b657e1c54c9d022b66 Mon Sep 17 00:00:00 2001 From: Tamás Zolnai Date: Thu, 22 Aug 2019 15:57:41 +0200 Subject: tdf#127085: FILESAVE: Transparency is lost after RT MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-on: https://gerrit.libreoffice.org/77963 Tested-by: Jenkins Reviewed-by: Tamás Zolnai (cherry picked from commit 505cbb9c3d2771a12c989515663cc1eb73dd0c2f) Change-Id: I22ba83b5cc00f84112a3755898ee2be58337afd6 Reviewed-on: https://gerrit.libreoffice.org/78263 Tested-by: Jenkins Reviewed-by: Xisco Faulí --- oox/source/export/drawingml.cxx | 10 +++++++--- sw/qa/extras/ooxmlexport/data/tdf127085.docx | Bin 0 -> 34263 bytes sw/qa/extras/ooxmlexport/ooxmlexport13.cxx | 7 +++++++ 3 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 sw/qa/extras/ooxmlexport/data/tdf127085.docx diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx index 0f4f75c155cc..b8598b36030b 100644 --- a/oox/source/export/drawingml.cxx +++ b/oox/source/export/drawingml.cxx @@ -1194,14 +1194,18 @@ void DrawingML::WriteImageBrightnessContrastTransparence(uno::Reference(); if (GetProperty(rXPropSet, "AdjustContrast")) nContrast = mAny.get(); - if (GetProperty(rXPropSet, "Transparency")) - nTransparence = mAny.get(); + // Used for shapes with picture fill + if (GetProperty(rXPropSet, "FillTransparence")) + nTransparence = mAny.get(); + // Used for pictures + if (nTransparence == 0 && GetProperty(rXPropSet, "Transparency")) + nTransparence = static_cast(mAny.get()); if (nBright || nContrast) diff --git a/sw/qa/extras/ooxmlexport/data/tdf127085.docx b/sw/qa/extras/ooxmlexport/data/tdf127085.docx new file mode 100644 index 000000000000..65556fe38abd Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf127085.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx index a3a7184b34e0..4942409a78d5 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx @@ -124,6 +124,13 @@ DECLARE_OOXMLEXPORT_TEST(testTdf125324, "tdf125324.docx") assertXPath(pXmlDoc, "/root/page/body/txt[2]/anchored/fly/tab/infos/bounds", "top", "4193"); } +DECLARE_OOXMLEXPORT_TEST(tdf127085, "tdf127085.docx") +{ + // Fill transparency was lost during export + uno::Reference xShape(getShape(1), uno::UNO_QUERY); + CPPUNIT_ASSERT_EQUAL(sal_Int16(50), getProperty(xShape, "FillTransparence")); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3