summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsw/qa/extras/ooxmlexport/data/dml-groupshape-paraspacing.docxbin0 -> 13586 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/ooxmlexport.cxx12
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx6
3 files changed, 16 insertions, 2 deletions
diff --git a/sw/qa/extras/ooxmlexport/data/dml-groupshape-paraspacing.docx b/sw/qa/extras/ooxmlexport/data/dml-groupshape-paraspacing.docx
new file mode 100755
index 000000000000..1cb48d3c2d61
--- /dev/null
+++ b/sw/qa/extras/ooxmlexport/data/dml-groupshape-paraspacing.docx
Binary files differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
index a7ea17518159..60e0f4f22014 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
@@ -2317,6 +2317,18 @@ DECLARE_OOXMLEXPORT_TEST(testDmlGroupshapeRelsize, "dml-groupshape-relsize.docx"
assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/wp14:sizeRelH", "relativeFrom", "page");
}
+DECLARE_OOXMLEXPORT_TEST(testDmlGroupshapeParaspacing, "dml-groupshape-paraspacing.docx")
+{
+ xmlDocPtr pXmlDoc = parseExport("word/document.xml");
+ if (!pXmlDoc)
+ return;
+ // Paragraph spacing of shape text in groupshapes was left, the w:spacing element was missing in pPr.
+ assertXPath(pXmlDoc,
+ "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/a:graphic/a:graphicData/wpg:wgp/wps:wsp[1]/wps:txbx/w:txbxContent/w:p/w:pPr/w:spacing",
+ "before",
+ "240");
+}
+
DECLARE_OOXMLEXPORT_TEST(testTrackChangesDeletedParagraphMark, "testTrackChangesDeletedParagraphMark.docx")
{
xmlDocPtr pXmlDoc = parseExport("word/document.xml");
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index f376d529a2f6..d30840fb54c1 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -3466,11 +3466,13 @@ void DocxAttributeOutput::WriteOutliner(const OutlinerParaObject& rParaObj)
sal_Int32 nAktPos = 0;
sal_Int32 nEnd = aStr.getLength();
- m_pSerializer->startElementNS( XML_w, XML_p, FSEND );
+ StartParagraph(ww8::WW8TableNodeInfo::Pointer_t());
// Write paragraph properties.
m_pSerializer->startElementNS(XML_w, XML_pPr, FSEND);
+ StartParagraphProperties();
aAttrIter.OutParaAttr(false);
+ EndParagraphProperties(0, 0, 0, 0);
m_pSerializer->endElementNS(XML_w, XML_pPr);
do {
@@ -3497,7 +3499,7 @@ void DocxAttributeOutput::WriteOutliner(const OutlinerParaObject& rParaObj)
aAttrIter.NextPos();
}
while( nAktPos < nEnd );
- m_pSerializer->endElementNS( XML_w, XML_p );
+ EndParagraph(ww8::WW8TableNodeInfoInner::Pointer_t());
}
m_pSerializer->endElementNS( XML_w, XML_txbxContent );
}