summaryrefslogtreecommitdiffstats
path: root/filter
diff options
context:
space:
mode:
authorAndre Fischer <af@apache.org>2012-07-09 11:57:55 +0000
committerXisco Fauli <anistenis@gmail.com>2013-03-31 16:22:35 +0200
commitbdd1a3e1001258a7af5366d73a24ecb3173dab70 (patch)
treea9fbfdd5350bdd7e048068d5f8928d9fdedfaf98 /filter
parent#i119536# Fixed rotation when importing PPT. (diff)
downloadcore-bdd1a3e1001258a7af5366d73a24ecb3173dab70.tar.gz
core-bdd1a3e1001258a7af5366d73a24ecb3173dab70.zip
#i120039# Export more bitmap fill style parameters.
Reported by: Du Jing Patch by: zjchen Review by: Andre Fischer
Diffstat (limited to 'filter')
-rw-r--r--filter/source/msfilter/escherex.cxx38
1 files changed, 37 insertions, 1 deletions
diff --git a/filter/source/msfilter/escherex.cxx b/filter/source/msfilter/escherex.cxx
index 72095b726b14..880cc518a5c0 100644
--- a/filter/source/msfilter/escherex.cxx
+++ b/filter/source/msfilter/escherex.cxx
@@ -1453,7 +1453,43 @@ sal_Bool EscherPropertyContainer::CreateGraphicProperties(
}
if ( eBitmapMode == ::com::sun::star::drawing::BitmapMode_REPEAT )
- AddOpt( ESCHER_Prop_fillType, ESCHER_FillTexture );
+ {
+ sal_Int32 nSizeX = 0,nSizeY = 0,nOffsetX = 0,nOffsetY = 0,nPosOffsetX = 0,nPosOffsetY = 0;
+ if ( EscherPropertyValueHelper::GetPropertyValue( aAny, rXPropSet,
+ String( RTL_CONSTASCII_USTRINGPARAM( "FillBitmapSizeX" ) ), sal_True ) )
+ {
+ aAny >>= nSizeX;
+ }
+ if ( EscherPropertyValueHelper::GetPropertyValue( aAny, rXPropSet,
+ String( RTL_CONSTASCII_USTRINGPARAM( "FillBitmapSizeY" ) ), sal_True ) )
+ {
+ aAny >>= nSizeY;
+ }
+ if ( EscherPropertyValueHelper::GetPropertyValue( aAny, rXPropSet,
+ String( RTL_CONSTASCII_USTRINGPARAM( "FillBitmapOffsetX" ) ), sal_True ) )
+ {
+ aAny >>= nOffsetX;
+ }
+ if ( EscherPropertyValueHelper::GetPropertyValue( aAny, rXPropSet,
+ String( RTL_CONSTASCII_USTRINGPARAM( "FillBitmapOffsetY" ) ), sal_True ) )
+ {
+ aAny >>= nOffsetY;
+ }
+ if ( EscherPropertyValueHelper::GetPropertyValue( aAny, rXPropSet,
+ String( RTL_CONSTASCII_USTRINGPARAM( "FillBitmapPositionOffsetX" ) ), sal_True ) )
+ {
+ aAny >>= nPosOffsetX;
+ }
+ if ( EscherPropertyValueHelper::GetPropertyValue( aAny, rXPropSet,
+ String( RTL_CONSTASCII_USTRINGPARAM( "FillBitmapPositionOffsetY" ) ), sal_True ) )
+ {
+ aAny >>= nPosOffsetY;
+ }
+ if(nSizeX == -100 && nSizeY == -100 && nOffsetX == 0 && nOffsetY == 0 && nPosOffsetX == 0 && nPosOffsetY == 0)
+ AddOpt( ESCHER_Prop_fillType, ESCHER_FillPicture );
+ else
+ AddOpt( ESCHER_Prop_fillType, ESCHER_FillTexture );
+ }
else
AddOpt( ESCHER_Prop_fillType, ESCHER_FillPicture );