summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-06-24 09:08:56 +0200
committerAndras Timar <andras.timar@collabora.com>2015-07-08 12:04:17 +0200
commite3afafb236e273516b94bf6ed3fc9de403843245 (patch)
treef77f9c14490ef9619fd678d1cee992e4bdf8ad5b
parent196de69bf650f2d96ecb60d5c118ed47c1587da1 (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();