summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2017-02-15 16:20:13 +0200
committerTor Lillqvist <tml@collabora.com>2017-02-15 16:49:22 +0200
commitd2b014edc0f466370023a35eb46548390ceb7fb2 (patch)
treecccf09877dbce58e7bccac88feddaabc93e2f0b7
parentf18e476308845c6b4acde4e8009c3ca21bbe0621 (diff)
tdf#106026: Export paragraph top and bottom margin to DrawingML
Change-Id: I8c60f86a1debe135c9172ff639aa5af93f03b99b
-rw-r--r--oox/source/export/drawingml.cxx28
1 files changed, 28 insertions, 0 deletions
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index 084ce1aeac79..13871c95356c 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -1948,6 +1948,12 @@ void DrawingML::WriteParagraphProperties( const Reference< XTextContent >& rPara
GET( nParaLeftMargin, ParaLeftMargin );
GET( nParaFirstLineIndent,ParaFirstLineIndent);
+ sal_Int32 nParaTopMargin = 0;
+ sal_Int32 nParaBottomMargin = 0;
+
+ GET( nParaTopMargin, ParaTopMargin );
+ GET( nParaBottomMargin, ParaBottomMargin );
+
sal_Int32 nLeftMargin = getBulletMarginIndentation ( rXPropSet, nLevel,"LeftMargin");
sal_Int32 nLineIndentation = getBulletMarginIndentation ( rXPropSet, nLevel,"FirstLineOffset");
@@ -1980,6 +1986,28 @@ void DrawingML::WriteParagraphProperties( const Reference< XTextContent >& rPara
mpFS->endElementNS( XML_a, XML_lnSpc );
}
+ if( nParaTopMargin != 0 )
+ {
+ mpFS->startElementNS( XML_a, XML_spcBef, FSEND );
+ {
+ mpFS->singleElementNS( XML_a, XML_spcPts,
+ XML_val, I32S( std::lround( nParaTopMargin / 25.4 * 72 ) ),
+ FSEND );
+ }
+ mpFS->endElementNS( XML_a, XML_spcBef );
+ }
+
+ if( nParaBottomMargin != 0 )
+ {
+ mpFS->startElementNS( XML_a, XML_spcAft, FSEND );
+ {
+ mpFS->singleElementNS( XML_a, XML_spcPts,
+ XML_val, I32S( std::lround( nParaBottomMargin / 25.4 * 72 ) ),
+ FSEND );
+ }
+ mpFS->endElementNS( XML_a, XML_spcAft );
+ }
+
WriteParagraphNumbering( rXPropSet, nLevel );
mpFS->endElementNS( XML_a, XML_pPr );