summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMuthu Subramanian <sumuthu@collabora.com>2013-11-13 20:54:46 +0530
committerAndras Timar <andras.timar@collabora.com>2013-11-20 11:36:36 +0100
commit101b4a05a613fb662dc5854dd0f834f7aa369f66 (patch)
tree20f770940df17844300abce0bf3d5f137690487f
parent6809b7c573fee722de97197a6242e13b3bd94a08 (diff)
n#828390: Export subscript text.
Signed-off-by: Andras Timar <andras.timar@collabora.com>
-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 b0831125c346..2abc67a7caf9 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -698,6 +698,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())));
@@ -784,12 +785,24 @@ void DrawingML::WriteRunProperties( Reference< XPropertySet > rRun, sal_Bool bIs
usLanguage = usLanguageBuffer.makeStringAndClear();
}
+ 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