diff options
-rw-r--r-- | oox/source/drawingml/drawingmltypes.cxx | 10 | ||||
-rw-r--r-- | sc/qa/unit/subsequent_export-test.cxx | 4 |
2 files changed, 9 insertions, 5 deletions
diff --git a/oox/source/drawingml/drawingmltypes.cxx b/oox/source/drawingml/drawingmltypes.cxx index cda9c1c61817..93c7c423330f 100644 --- a/oox/source/drawingml/drawingmltypes.cxx +++ b/oox/source/drawingml/drawingmltypes.cxx @@ -90,14 +90,18 @@ float GetTextSize( const OUString& sValue ) sal_Int32 GetTextSpacingPoint( const OUString& sValue ) { sal_Int32 nRet; - if( ::sax::Converter::convertNumber( nRet, sValue ) ) + if( ::sax::Converter::convertNumber( nRet, sValue, (SAL_MIN_INT32 + 360) / 254, (SAL_MAX_INT32 - 360) / 254 ) ) nRet = GetTextSpacingPoint( nRet ); return nRet; } -sal_Int32 GetTextSpacingPoint( const sal_Int32 nValue ) +sal_Int32 GetTextSpacingPoint(sal_Int32 nValue) { - return ( nValue * 254 + 360 ) / 720; + if (nValue > 0) + nValue = (nValue * 254 + 360); + else if (nValue < 0) + nValue = (nValue * 254 - 360); + return nValue / 720; } float GetFontHeight( sal_Int32 nHeight ) diff --git a/sc/qa/unit/subsequent_export-test.cxx b/sc/qa/unit/subsequent_export-test.cxx index 26b925d14a16..fcef9a057c68 100644 --- a/sc/qa/unit/subsequent_export-test.cxx +++ b/sc/qa/unit/subsequent_export-test.cxx @@ -3415,8 +3415,8 @@ void ScExportTest::testSheetCondensedCharacterSpaceXLSX() OUString CondensedCharSpace = getXPath(pDoc, "/xdr:wsDr[1]/xdr:twoCellAnchor[1]/xdr:sp[1]/xdr:txBody[1]/a:p[1]/a:r[1]/a:rPr[1]","spc"); - // make sure that the CondensedCharSpace is -996. - CPPUNIT_ASSERT_EQUAL(OUString("-996"), CondensedCharSpace); + // make sure that the CondensedCharSpace is -1002. + CPPUNIT_ASSERT_EQUAL(OUString("-1002"), CondensedCharSpace); xDocSh->DoClose(); } |