diff options
author | Sun Ying <sunying@apache.org> | 2012-08-16 02:13:43 +0000 |
---|---|---|
committer | Xisco Fauli <anistenis@gmail.com> | 2013-04-01 23:16:22 +0200 |
commit | 460e17a1c7dae290ae9375e78820ec1257fe3942 (patch) | |
tree | 0919c6adccdc6a5cf255f1fe0c790d9e82357dfd | |
parent | a9d8b4dfc103b991de6c4d99914a39acef93ad23 (diff) |
#119875# fix vertical text direction in table cell change when save .ppt file
Reported by: Li Feng Wang
Patch by: Ying Sun
Review by: Jian Yuan Li
-rw-r--r-- | filter/source/msfilter/svdfppt.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index 200e7b475389..d65254ba0be7 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -7272,6 +7272,16 @@ void ApplyCellAttributes( const SdrObject* pObj, Reference< XCell >& xCell ) eVA = drawing::TextVerticalAdjust_BOTTOM; xPropSet->setPropertyValue( sTextVerticalAdjust, Any( eVA ) ); + //set textHorizontalAdjust and TextWritingMode attr + const sal_Int32 eHA(((const SdrTextLeftDistItem&)pObj->GetMergedItem(SDRATTR_TEXT_HORZADJUST)).GetValue()); + const SvxFrameDirection eDirection = (const SvxFrameDirection)((( const SvxFrameDirectionItem&)pObj->GetMergedItem(EE_PARA_WRITINGDIR)).GetValue()); + static const rtl::OUString sHorizontalAdjust( RTL_CONSTASCII_USTRINGPARAM( "TextHorizontalAdjust" ) ); + static const rtl::OUString sWritingMode( RTL_CONSTASCII_USTRINGPARAM("TextWritingMode") ); + xPropSet->setPropertyValue( sHorizontalAdjust , Any( eHA ) ); + if ( eDirection == FRMDIR_VERT_TOP_RIGHT ) + {//vertical writing + xPropSet->setPropertyValue( sWritingMode , Any( ::com::sun::star::text::WritingMode_TB_RL ) ); + } SfxItemSet aSet( pObj->GetMergedItemSet() ); XFillStyle eFillStyle(((XFillStyleItem&)pObj->GetMergedItem( XATTR_FILLSTYLE )).GetValue()); ::com::sun::star::drawing::FillStyle eFS( com::sun::star::drawing::FillStyle_NONE ); |