From 32262b0a537207832d7d126d8427d8949b9e821d Mon Sep 17 00:00:00 2001 From: László Németh Date: Wed, 29 May 2019 16:36:41 +0200 Subject: tdf#120412 char formatting UI: clean-up DFLT_ESC_AUTO MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Default auto values must be outside of the new enlarged range of the superscript/subscript percent values. Note: the raising limit was modified to 13999 from 14400, because the RTF unit test tdf112208_hangingIndent.rtf lost its hanging from the bigger value. Change-Id: I3a7e9715a27570278ee4ee70f9fc9ad29457e100 Reviewed-on: https://gerrit.libreoffice.org/73166 Tested-by: Jenkins Reviewed-by: László Németh --- writerfilter/source/dmapper/DomainMapper.cxx | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'writerfilter') diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx index 6276d56a1b01..195e360a671d 100644 --- a/writerfilter/source/dmapper/DomainMapper.cxx +++ b/writerfilter/source/dmapper/DomainMapper.cxx @@ -68,6 +68,7 @@ #include #include #include +#include #include #include #include @@ -2206,9 +2207,9 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, const PropertyMapPtr& rContext ) sal_Int16 nEscapement = 0; sal_Int8 nProp = 58; if ( sStringValue == "superscript" ) - nEscapement = 101; + nEscapement = DFLT_ESC_AUTO_SUPER; else if ( sStringValue == "subscript" ) - nEscapement = -101; + nEscapement = DFLT_ESC_AUTO_SUB; else nProp = 100; @@ -2839,8 +2840,17 @@ void DomainMapper::processDeferredCharacterProperties( const std::map< sal_Int32 nEscapement = ( nIntValue > 0 ) ? 58: -58; } } + // tdf#120412 up to 14400% (eg. 1584 pt with 11 pt letters) - if( nEscapement > 14400 ) nEscapement = 14400; + if ( nEscapement > MAX_ESC_POS ) + { + nEscapement = MAX_ESC_POS; + } + else if ( nEscapement < -MAX_ESC_POS ) + { + nEscapement = -MAX_ESC_POS; + } + rContext->Insert(PROP_CHAR_ESCAPEMENT, uno::makeAny( nEscapement ) ); rContext->Insert(PROP_CHAR_ESCAPEMENT_HEIGHT, uno::makeAny( nProp ) ); } -- cgit