Index: main/editeng/source/editeng/impedit3.cxx =================================================================== --- main/editeng/source/editeng/impedit3.cxx (revision 1361913) +++ main/editeng/source/editeng/impedit3.cxx (working copy) @@ -1343,6 +1343,19 @@ } } } + else if( rLSItem.GetLineSpaceRule() == SVX_LINE_SPACE_FIX ) + { + sal_uInt16 nTxtHeight = pLine->GetHeight(); + sal_uInt32 nH = rLSItem.GetLineHeight(); + if ( nH != nTxtHeight ) + { + long nMaxAscent = pLine->GetMaxAscent() - nTxtHeight + nH; + if ( nMaxAscent < 0 ) + nMaxAscent = 0 ; + pLine->SetMaxAscent( (sal_uInt16)nMaxAscent ); + pLine->SetHeight( (sal_uInt16)nH, nTxtHeight ); + } + } } @@ -1688,6 +1701,19 @@ } } } + else if( rLSItem.GetLineSpaceRule() == SVX_LINE_SPACE_FIX ) + { + sal_uInt16 nTxtHeight = pTmpLine->GetHeight(); + sal_uInt32 nH = rLSItem.GetLineHeight(); + if ( nH != nTxtHeight ) + { + long nMaxAscent = pTmpLine->GetMaxAscent() - nTxtHeight + nH; + if ( nMaxAscent < 0 ) + nMaxAscent = 0 ; + pTmpLine->SetMaxAscent( (sal_uInt16)nMaxAscent ); + pTmpLine->SetHeight( (sal_uInt16)nH, nTxtHeight ); + } + } } if ( !bLineBreak ) Index: main/filter/source/msfilter/svdfppt.cxx =================================================================== --- main/filter/source/msfilter/svdfppt.cxx (revision 1361927) +++ main/filter/source/msfilter/svdfppt.cxx (working copy) @@ -6415,7 +6415,10 @@ rSet.Put( SdrTextFixedCellHeightItem( sal_True ), SDRATTR_TEXT_USEFIXEDCELLHEIGHT ); SvxLineSpacingItem aItem( 200, EE_PARA_SBL ); if ( nVal2 <= 0 ) + { aItem.SetLineHeight( (sal_uInt16)( rManager.ScalePoint( -nVal2 ) / 8 ) ); + aItem.GetLineSpaceRule() = SVX_LINE_SPACE_FIX; + } else { sal_uInt8 nPropLineSpace = (sal_uInt8)nVal2;