diff options
author | László Németh <nemeth@numbertext.org> | 2020-09-01 08:48:53 +0200 |
---|---|---|
committer | László Németh <nemeth@numbertext.org> | 2020-09-02 08:01:44 +0200 |
commit | 4a96b2b7787900b6ca45e772daa0fc284b3a4e0f (patch) | |
tree | 160a4374620b5175842bdd16736e85a4107f5c69 /sw/source | |
parent | 4d33262b1b652b57f222c9f1cce7d976725399d4 (diff) |
tdf#134649 DOCX export: fix page break between tables
Section break between tables wasn't exported,
resulting missing page break and table content.
For example, a table on a new landscape page was
merged to the previous table, removing not only the
landscape page, but hiding half of the table because
of the narrower width of the previous page with
portrait orientation.
Change-Id: Id02529d023a6306fb5be42486d25f252d8821f2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101823
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'sw/source')
-rw-r--r-- | sw/source/filter/ww8/docxattributeoutput.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index 4bd72ebf247a..6a1593d265e4 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -1027,6 +1027,13 @@ void DocxAttributeOutput::SectionBreaks(const SwNode& rNode) if (rNode.StartOfSectionNode()->IsTableNode() || rNode.StartOfSectionNode()->IsSectionNode()) m_rExport.OutputSectionBreaks(pTextNode->GetpSwAttrSet(), *pTextNode, m_tableReference->m_bTableCellOpen); } + else if (aNextIndex.GetNode().IsTableNode()) + { + // Handle section break between tables. + const SwTableNode* pTableNode = static_cast<SwTableNode*>(&aNextIndex.GetNode()); + const SwFrameFormat *pFormat = pTableNode->GetTable().GetFrameFormat(); + m_rExport.OutputSectionBreaks(&(pFormat->GetAttrSet()), *pTableNode); + } } } |