diff options
author | Jianyuan Li <lijiany@apache.org> | 2012-09-10 07:21:39 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-06-05 11:05:10 +0100 |
commit | a05c0cfa40001aa1f4247a4e9f1fcefad7e7cf88 (patch) | |
tree | 056fa1200bb26fd242bcfcb77088dadb7f3c8a68 | |
parent | 4450d6bbd10fbf57f18912095f58c4a79b20bcb7 (diff) |
Resolves: #i119521# Layout is corrupted on opening PPT
Reported by: Du Jing
Patch by: Jianyuan Li
Review by: sunying
(cherry picked from commit 1231c27a8f1db5df57071d30e2105e25baf77730)
Change-Id: Iaa02a98e0fe06a242d56a120ab5acb149ebb6045
-rw-r--r-- | filter/source/msfilter/svdfppt.cxx | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index 91891c9c23c8..5e28dfa48d61 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -6234,6 +6234,8 @@ void PPTParagraphObj::ApplyTo( SfxItemSet& rSet, boost::optional< sal_Int16 >& SvxTabStopItem aTabItem( 0, 0, SVX_TAB_ADJUST_DEFAULT, EE_PARA_TABS ); if ( GetTabCount() ) { + //paragraph offset = MIN(first_line_offset, hanging_offset) + sal_uInt32 nParaOffset = std::min(nTextOfs2, nTab); for ( i = 0; i < GetTabCount(); i++ ) { SvxTabAdjust eTabAdjust; @@ -6245,8 +6247,8 @@ void PPTParagraphObj::ApplyTo( SfxItemSet& rSet, boost::optional< sal_Int16 >& case 3 : eTabAdjust = SVX_TAB_ADJUST_DECIMAL; break; default : eTabAdjust = SVX_TAB_ADJUST_LEFT; } - if ( nTab > nTextOfs2 ) - aTabItem.Insert( SvxTabStop( (sal_uInt16)( ( ( nTab - nTextOfs2 ) * 2540 ) / 576 ), eTabAdjust ) ); + if ( nTab > nParaOffset )//If tab stop greater than paragraph offset + aTabItem.Insert( SvxTabStop( ( ( (long( nTab - nTextOfs2 )) * 2540 ) / 576 ), eTabAdjust ) ); } nLatestManTab = nTab; } |