diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-02-06 17:54:01 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-02-06 18:38:07 +0100 |
commit | 62b63d9f4b99713d10021c068005f74694299302 (patch) | |
tree | c51207624d2409e6878082ac59ec892b0648b63c /sw/source | |
parent | 89420ff310d2877c1f77eaafea2daaca0068669d (diff) |
DOCX export: write wp14:sizeRelH and wp14:sizeRelV for Writer TextFrames
Change-Id: I16ee2682b6fa8c7b194e442d6dbe1437e7743c60
Diffstat (limited to 'sw/source')
-rw-r--r-- | sw/source/filter/ww8/docxsdrexport.cxx | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/sw/source/filter/ww8/docxsdrexport.cxx b/sw/source/filter/ww8/docxsdrexport.cxx index d0deeb5ce615..cd2bd55e4563 100644 --- a/sw/source/filter/ww8/docxsdrexport.cxx +++ b/sw/source/filter/ww8/docxsdrexport.cxx @@ -907,6 +907,29 @@ void DocxSdrExport::writeDMLTextFrame(sw::Frame* pParentFrame, int nAnchorId) pFS->endElementNS(XML_wps, XML_wsp); pFS->endElementNS(XML_a, XML_graphicData); pFS->endElementNS(XML_a, XML_graphic); + + // Relative size of the Text Frame. + if (rSize.GetWidthPercent()) + { + pFS->startElementNS(XML_wp14, XML_sizeRelH, + XML_relativeFrom, (rSize.GetWidthPercentRelation() == text::RelOrientation::PAGE_FRAME ? "page" : "margin"), + FSEND); + pFS->startElementNS(XML_wp14, XML_pctWidth, FSEND); + pFS->writeEscaped(OUString::number(rSize.GetWidthPercent() * oox::drawingml::PER_PERCENT)); + pFS->endElementNS(XML_wp14, XML_pctWidth); + pFS->endElementNS(XML_wp14, XML_sizeRelH); + } + if (rSize.GetHeightPercent()) + { + pFS->startElementNS(XML_wp14, XML_sizeRelV, + XML_relativeFrom, (rSize.GetHeightPercentRelation() == text::RelOrientation::PAGE_FRAME ? "page" : "margin"), + FSEND); + pFS->startElementNS(XML_wp14, XML_pctHeight, FSEND); + pFS->writeEscaped(OUString::number(rSize.GetHeightPercent() * oox::drawingml::PER_PERCENT)); + pFS->endElementNS(XML_wp14, XML_pctHeight); + pFS->endElementNS(XML_wp14, XML_sizeRelV); + } + endDMLAnchorInline(&rFrmFmt); } |