summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorTünde Tóth <toth.tunde@nisz.hu>2022-01-19 14:53:50 +0100
committerLászló Németh <nemeth@numbertext.org>2022-02-02 17:27:00 +0100
commit1bce0e3004e3ec9d62a3c43801f8f2e8ef5f7fdb (patch)
treefc16f38f3dc356717a9b7df8c7adda306c8aafb7 /sd
parent6c4bc632180c25b3ceb30e32383b3f5db8eaf0e2 (diff)
tdf#112209 PPTX import: fix grayscale effect on image filled shape
Some image filled shapes with grayscale effect in PPTX documents created with PowerPoint were not grayscale in Impress. Change-Id: I0a89f283f525eb47c21c5d5fa788484d8074a7e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128616 Tested-by: Jenkins Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'sd')
-rw-r--r--sd/qa/unit/data/pptx/tdf112209.pptxbin0 -> 28536 bytes
-rw-r--r--sd/qa/unit/import-tests2.cxx26
2 files changed, 26 insertions, 0 deletions
diff --git a/sd/qa/unit/data/pptx/tdf112209.pptx b/sd/qa/unit/data/pptx/tdf112209.pptx
new file mode 100644
index 000000000000..80865820dfad
--- /dev/null
+++ b/sd/qa/unit/data/pptx/tdf112209.pptx
Binary files differ
diff --git a/sd/qa/unit/import-tests2.cxx b/sd/qa/unit/import-tests2.cxx
index 04e365bfa130..7c0844e354b9 100644
--- a/sd/qa/unit/import-tests2.cxx
+++ b/sd/qa/unit/import-tests2.cxx
@@ -127,6 +127,7 @@ public:
void testTdf49856();
void testTdf103347();
void testHyperlinksOnShapes();
+ void testTdf112209();
CPPUNIT_TEST_SUITE(SdImportTest2);
@@ -190,6 +191,7 @@ public:
CPPUNIT_TEST(testTdf134210CropPosition);
CPPUNIT_TEST(testTdf103347);
CPPUNIT_TEST(testHyperlinksOnShapes);
+ CPPUNIT_TEST(testTdf112209);
CPPUNIT_TEST_SUITE_END();
};
@@ -1864,6 +1866,30 @@ void SdImportTest2::testHyperlinksOnShapes()
xDocShRef->DoClose();
}
+void SdImportTest2::testTdf112209()
+{
+ sd::DrawDocShellRef xDocShRef
+ = loadURL(m_directories.getURLFromSrc(u"sd/qa/unit/data/pptx/tdf112209.pptx"), PPTX);
+ uno::Reference<beans::XPropertySet> xShape(getShapeFromPage(0, 0, xDocShRef),
+ uno::UNO_SET_THROW);
+ CPPUNIT_ASSERT(xShape.is());
+
+ uno::Reference<graphic::XGraphic> xGraphic;
+ xShape->getPropertyValue("FillBitmap") >>= xGraphic;
+ CPPUNIT_ASSERT(xGraphic.is());
+
+ Graphic aGraphic(xGraphic);
+ BitmapEx aBitmap(aGraphic.GetBitmapEx());
+
+ // Without the accompanying fix in place, this test would have failed with:
+ // - Expected: Color: R:132 G:132 B:132 A:0
+ // - Actual : Color: R:21 G:170 B:236 A:0
+ // i.e. the image color was blue instead of grey.
+ CPPUNIT_ASSERT_EQUAL(Color(0x848484), aBitmap.GetPixelColor(0, 0));
+
+ xDocShRef->DoClose();
+}
+
CPPUNIT_TEST_SUITE_REGISTRATION(SdImportTest2);
CPPUNIT_PLUGIN_IMPLEMENT();