summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-06-24 09:08:56 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-06-24 09:32:36 +0200
commit115662b46ee3cea3620b016c9a2ac91ac9eaaeec (patch)
treeacdd3bd07a2d3bf1bb275434b4dbba98b8b0c1b3
parent6ce2e29078265c41e83f9094244e638eba82e836 (diff)
tdf#89698 DOCX import: inline picture should have no spacing
Commit 3d7e168a2a43c2414b0633379102ddb29437e75b (n#783638 DOCX import of wp:inline's distT/B/L/R attributes, 2012-10-11) was about a picture that had non-zero spacing in LO, but zero in Word. The hope was that the problem is just that the value is not imported. Then commit a88ac708403c03d0f950f09ec29c0d5a1e5a85b4 (fdo#63685 wp:inline's distT/B/L/R is in EMU's, not twips, 2013-04-19) was about a picture that had so large spacing that the picture become invisible. Fixing the unit of the spacing value made the picture visible again. What was missed is that this value is just stored in the doc model, but layout in Word doesn't use it at all till the anchoring is as-char. Given that in LO as-char anchoring supports real spacing, just don't import these values to have the same layout. That's what the WW8 import does, too. Change-Id: I1244269e06c5d190e8340349ddc12ae7b0572a4d (cherry picked from commit 9781a8786da5c32e2250cbe1ae97bd10f84f39bb)
-rw-r--r--sw/qa/extras/ooxmlimport/ooxmlimport.cxx4
-rw-r--r--writerfilter/source/dmapper/GraphicImport.cxx8
2 files changed, 6 insertions, 6 deletions
diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
index 59950273ee18..d8cd372ef675 100644
--- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
+++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
@@ -1380,8 +1380,8 @@ DECLARE_OOXMLIMPORT_TEST(testConditionalstylesTablelook, "conditionalstyles-tbll
DECLARE_OOXMLIMPORT_TEST(testFdo63685, "fdo63685.docx")
{
- // Was 85697, i.e. original 114120 was converted to mm100 from twips, not from EMUs.
- CPPUNIT_ASSERT_EQUAL(sal_Int32(318), getProperty<sal_Int32>(getShape(1), "TopMargin"));
+ // An inline image's wrapping should be always zero, even if the doc model has a non-zero value.
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(0), getProperty<sal_Int32>(getShape(1), "TopMargin"));
}
DECLARE_OOXMLIMPORT_TEST(testN592908_Frame, "n592908-frame.docx")
diff --git a/writerfilter/source/dmapper/GraphicImport.cxx b/writerfilter/source/dmapper/GraphicImport.cxx
index 0111889bbb47..154b9e2bb137 100644
--- a/writerfilter/source/dmapper/GraphicImport.cxx
+++ b/writerfilter/source/dmapper/GraphicImport.cxx
@@ -870,16 +870,16 @@ void GraphicImport::lcl_attribute(Id nName, Value& rValue)
}
break;
case NS_ooxml::LN_CT_Inline_distT:
- m_pImpl->nTopMargin = oox::drawingml::convertEmuToHmm(nIntValue);
+ m_pImpl->nTopMargin = 0;
break;
case NS_ooxml::LN_CT_Inline_distB:
- m_pImpl->nBottomMargin = oox::drawingml::convertEmuToHmm(nIntValue);
+ m_pImpl->nBottomMargin = 0;
break;
case NS_ooxml::LN_CT_Inline_distL:
- m_pImpl->nLeftMargin = oox::drawingml::convertEmuToHmm(nIntValue);
+ m_pImpl->nLeftMargin = 0;
break;
case NS_ooxml::LN_CT_Inline_distR:
- m_pImpl->nRightMargin = oox::drawingml::convertEmuToHmm(nIntValue);
+ m_pImpl->nRightMargin = 0;
break;
case NS_ooxml::LN_CT_GraphicalObjectData_uri:
rValue.getString();