[Libreoffice-commits] core.git: oox/source sw/qa
Sushil Shinde
sushilshinde at libreoffice.org
Thu Apr 30 01:32:33 PDT 2015
oox/source/vml/vmlshape.cxx | 5 +++++
sw/qa/extras/ooxmlimport/data/testfdo90720.docx |binary
sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 12 ++++++++++++
3 files changed, 17 insertions(+)
New commits:
commit 049e84125fb76f7a1a051d7cac2e04e37a7cd190
Author: Sushil Shinde <sushilshinde at libreoffice.org>
Date: Mon Apr 20 00:45:06 2015 +0530
tdf#90720 Textframe background was not transparent
In case of 'no fill' for vml textboxes, MS office rendered as
transpanrent textbox.
When opened same file on LO, it rendered it as textframe with white
background. (Even if the fillstyle is type of 'no fill' and 'backcolortransparency
' is 100%)
So, Fixing this issue by applying 100% 'FillTransparency' if it gets above situation.
Change-Id: Ied2d3855354ada994288c29c78d9ccb4e5b0b4d6
Reviewed-on: https://gerrit.libreoffice.org/15390
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/oox/source/vml/vmlshape.cxx b/oox/source/vml/vmlshape.cxx
index 1bb21a1..bd738d2 100644
--- a/oox/source/vml/vmlshape.cxx
+++ b/oox/source/vml/vmlshape.cxx
@@ -329,6 +329,11 @@ Reference< XShape > ShapeBase::convertAndInsert( const Reference< XShapes >& rxS
aGrabBag[length+1].Value = uno::makeAny(sal_Int32(NormAngle360((maTypeModel.maRotation.toInt32()) * -100)));
}
propertySet->setPropertyValue( "FrameInteropGrabBag", uno::makeAny(aGrabBag) );
+ if (propertySet->getPropertyValue("FillStyle") == FillStyle_NONE &&
+ propertySet->getPropertyValue("BackColorTransparency") == makeAny(100)) {
+ // If there is no fill, the Word default is 100% transparency.
+ propertySet->setPropertyValue("FillTransparence", makeAny(100));
+ }
}
else
{
diff --git a/sw/qa/extras/ooxmlimport/data/testfdo90720.docx b/sw/qa/extras/ooxmlimport/data/testfdo90720.docx
new file mode 100644
index 0000000..a4e8ba9
Binary files /dev/null and b/sw/qa/extras/ooxmlimport/data/testfdo90720.docx differ
diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
index 107060f..eebdc08 100644
--- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
+++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
@@ -360,6 +360,18 @@ xray image.FillColor
CPPUNIT_ASSERT_EQUAL( sal_Int32( 0xc0504d ), fillColor );
}
+DECLARE_OOXMLIMPORT_TEST(testfdo90720, "testfdo90720.docx")
+{
+ uno::Reference<text::XTextFramesSupplier> xTextFramesSupplier(mxComponent, uno::UNO_QUERY);
+ uno::Reference<container::XIndexAccess> xIndexAccess(xTextFramesSupplier->getTextFrames(), uno::UNO_QUERY);
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(2), xIndexAccess->getCount());
+ uno::Reference<text::XTextFrame> textbox(xIndexAccess->getByIndex(0), uno::UNO_QUERY);
+ uno::Reference<beans::XPropertySet> properties(textbox, uno::UNO_QUERY);
+ sal_Int32 fill_transperence;
+ properties->getPropertyValue( "FillTransparence" ) >>= fill_transperence;
+ CPPUNIT_ASSERT_EQUAL( sal_Int32(100), fill_transperence );
+}
+
DECLARE_OOXMLIMPORT_TEST(testN747461, "n747461.docx")
{
/*
More information about the Libreoffice-commits
mailing list