summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorMuthu Subramanian <sumuthu@collabora.com>2013-11-13 20:54:46 +0530
committerMuthu Subramanian <sumuthu@collabora.com>2013-11-13 20:58:30 +0530
commit08a52b17cb2e8c4c2a8c1ad7b95d2cfc5a9e844e (patch)
treecb7a83b1d85015ef994cfaf3e0a2071f81d5eeee /oox
parent5656393f02ddd501d60673b0686688156336f0ee (diff)
n#828390: Export subscript text.
Diffstat (limited to 'oox')
-rw-r--r--oox/source/export/drawingml.cxx13
1 files changed, 13 insertions, 0 deletions
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index 7a75d885cec8..3f5731bc09bf 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -697,6 +697,7 @@ void DrawingML::WriteRunProperties( Reference< XPropertySet > rRun, sal_Bool bIs
const char* italic = NULL;
const char* underline = NULL;
sal_Int32 nSize = 1800;
+ sal_Int32 nCharEscapement = 0;
if( GETAD( CharHeight ) )
nSize = (sal_Int32) (100*(*((float*) mAny.getValue())));
@@ -777,12 +778,24 @@ void DrawingML::WriteRunProperties( Reference< XPropertySet > rRun, sal_Bool bIs
usLanguage = aLanguageTag.getBcp47();
}
+ if( GETAD( CharEscapement ) )
+ mAny >>= nCharEscapement;
+
+ if( nCharEscapement && GETAD( CharEscapementHeight ) ) {
+ sal_uInt32 nCharEscapementHeight;
+ mAny >>= nCharEscapementHeight;
+ nSize = (nSize * nCharEscapementHeight) / 100;
+ // MSO uses default ~58% size
+ nSize = (nSize / 0.58);
+ }
+
mpFS->startElementNS( XML_a, XML_rPr,
XML_b, bold,
XML_i, italic,
XML_lang, usLanguage.isEmpty() ? NULL : USS( usLanguage ),
XML_sz, nSize == 1800 ? NULL : IS( nSize ),
XML_u, underline,
+ XML_baseline, nCharEscapement == 0 ? NULL : IS( nCharEscapement*1000 ),
FSEND );
// mso doesn't like text color to be placed after typeface