summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-06-24 09:08:56 +0200
committerMichael Stahl <mstahl@redhat.com>2015-07-07 20:32:01 +0000
commit8b7ec09054f3186ec9d6cb49a1314143cb89da78 (patch)
treeaa089dff7d3a5b971483b2a54dfacaaa636198e5
parent220e2f9eed294fa161190eb957511e796d3a96c2 (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. (cherry picked from commit 9781a8786da5c32e2250cbe1ae97bd10f84f39bb) Change-Id: I1244269e06c5d190e8340349ddc12ae7b0572a4d Reviewed-on: https://gerrit.libreoffice.org/16786 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
-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 99417ce9a0cb..beab2d1cb449 100644
--- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
+++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
@@ -1267,8 +1267,8 @@ DECLARE_OOXMLIMPORT_TEST(testConditionalstylesTbllook, "conditionalstyles-tblloo
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 58517994644a..e2a23720983f 100644
--- a/writerfilter/source/dmapper/GraphicImport.cxx
+++ b/writerfilter/source/dmapper/GraphicImport.cxx
@@ -858,16 +858,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();