diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-06-24 09:08:56 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-06-24 09:32:36 +0200 |
commit | 115662b46ee3cea3620b016c9a2ac91ac9eaaeec (patch) | |
tree | acdd3bd07a2d3bf1bb275434b4dbba98b8b0c1b3 | |
parent | 6ce2e29078265c41e83f9094244e638eba82e836 (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.cxx | 4 | ||||
-rw-r--r-- | writerfilter/source/dmapper/GraphicImport.cxx | 8 |
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(); |