diff options
Diffstat (limited to 'oox/source/vml/vmlformatting.cxx')
-rw-r--r-- | oox/source/vml/vmlformatting.cxx | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/oox/source/vml/vmlformatting.cxx b/oox/source/vml/vmlformatting.cxx index 6baea708c8a2..827930c22496 100644 --- a/oox/source/vml/vmlformatting.cxx +++ b/oox/source/vml/vmlformatting.cxx @@ -470,6 +470,7 @@ void FillModel::assignUsed( const FillModel& rSource ) moFocus.assignIfUsed( rSource.moFocus ); moFocusPos.assignIfUsed( rSource.moFocusPos ); moFocusSize.assignIfUsed( rSource.moFocusSize ); + moBitmapPath.assignIfUsed( rSource.moBitmapPath ); moRotate.assignIfUsed( rSource.moRotate ); } @@ -561,6 +562,23 @@ void FillModel::pushToPropMap( PropertyMap& rPropMap, } break; + case XML_pattern: + case XML_tile: + case XML_frame: + { + if( moBitmapPath.has() && moBitmapPath.get().getLength() > 0 ) + { + aFillProps.maBlipProps.mxGraphic = rGraphicHelper.importEmbeddedGraphic( moBitmapPath.get() ); + if( aFillProps.maBlipProps.mxGraphic.is() ) + { + aFillProps.moFillType = XML_blipFill; + aFillProps.maBlipProps.moBitmapMode = (nFillType == XML_frame) ? XML_stretch : XML_tile; + break; // do not break if bitmap is missing, but run to XML_solid instead + } + } + } + // run-through to XML_solid in case of missing bitmap path intended! + case XML_solid: default: { |