diff options
author | Cédric Bosdonnat <cedric.bosdonnat.ooo@free.fr> | 2011-11-22 15:14:33 +0100 |
---|---|---|
committer | Cédric Bosdonnat <cedric.bosdonnat.ooo@free.fr> | 2011-11-22 15:17:05 +0100 |
commit | 98f32b2b8ebefe50dfa99b5c72ceb2639bf63787 (patch) | |
tree | 30f3a2e447e3fe1362abf02c5efdf3344a4f2282 /writerfilter | |
parent | writerfilter: Fixed crasher when importing docx files with dbglevel>1 (diff) | |
download | core-98f32b2b8ebefe50dfa99b5c72ceb2639bf63787.tar.gz core-98f32b2b8ebefe50dfa99b5c72ceb2639bf63787.zip |
RTF import: better implement \trrh to import fixed height rows
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/rtftok/rtfdocumentimpl.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index b6f33c321f05..2a46fb035d03 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -2288,8 +2288,23 @@ int RTFDocumentImpl::dispatchValue(RTFKeyword nKeyword, int nParam) break; case RTF_TRRH: { + rtl::OUString hRule = rtl::OUString::createFromAscii("auto"); + if ( nParam < 0 ) + { + RTFValue::Pointer_t pAbsValue(new RTFValue(-nParam)); + pIntValue.swap( pAbsValue ); + + hRule = rtl::OUString::createFromAscii("exact"); + } + else if ( nParam > 0 ) + hRule = rtl::OUString::createFromAscii("atLeast"); + lcl_putNestedAttribute(m_aStates.top().aTableRowSprms, NS_ooxml::LN_CT_TrPrBase_trHeight, NS_ooxml::LN_CT_Height_val, pIntValue); + + RTFValue::Pointer_t pHRule(new RTFValue(hRule)); + lcl_putNestedAttribute(m_aStates.top().aTableRowSprms, + NS_ooxml::LN_CT_TrPrBase_trHeight, NS_ooxml::LN_CT_Height_hRule, pHRule); } break; case RTF_COLS: |