diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2006-01-24 13:40:25 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2006-01-24 13:40:25 +0000 |
commit | 8bf94e9463375edb732b04d7f60fd5a820eaf9d5 (patch) | |
tree | 44323775f9df9d59c401622e78b984ab259b1e24 /svtools | |
parent | 3e5f6834cd586d87cbd0a901aaec288907eddc35 (diff) |
INTEGRATION: CWS impress82 (1.27.86); FILE MERGED
2006/01/12 09:50:12 sj 1.27.86.1: #i57205# fixed ExtSetClipRnd action, taking care of correct fill color (use of bkcolor if no fillstyle has been set), fixed font scaling if the fontheicht is described as cell height
Diffstat (limited to 'svtools')
-rw-r--r-- | svtools/source/filter.vcl/wmf/enhwmf.cxx | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/svtools/source/filter.vcl/wmf/enhwmf.cxx b/svtools/source/filter.vcl/wmf/enhwmf.cxx index 64b1208f54b5..7475c62a2864 100644 --- a/svtools/source/filter.vcl/wmf/enhwmf.cxx +++ b/svtools/source/filter.vcl/wmf/enhwmf.cxx @@ -4,9 +4,9 @@ * * $RCSfile: enhwmf.cxx,v $ * - * $Revision: 1.27 $ + * $Revision: 1.28 $ * - * last change: $Author: hr $ $Date: 2005-10-25 11:31:03 $ + * last change: $Author: hr $ $Date: 2006-01-24 14:40:25 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -211,10 +211,8 @@ static sal_Bool ImplReadRegion( PolyPolygon& rPolyPoly, SvStream& rSt, sal_uInt3 >> nCount >> nRgnSize; - rSt.SeekRel( nHdSize - 16 ); - if ( nCount && - ( nType == RDH_RECTANGLES ) && - ( nLen >= ( ( nCount << 4 ) + nHdSize ) ) ) + if ( nCount && ( nType == RDH_RECTANGLES ) && + ( nLen >= ( ( nCount << 4 ) + ( nHdSize - 16 ) ) ) ) { sal_Int32 nx1, ny1, nx2, ny2; @@ -770,21 +768,20 @@ BOOL EnhWMFReader::ReadEnhWMF() // SvStream & rStreamWMF, GDIMetaFile & rGDIMeta { sal_Int32 nClippingMode; *pWMF >> nClippingMode; - pOut->SetClipPath( pOut->GetPathObj(), nClippingMode ); + pOut->SetClipPath( pOut->GetPathObj(), nClippingMode, sal_True ); } break; case EMR_EXTSELECTCLIPRGN : { - sal_Int32 nClippingMode; - *pWMF >> nIndex - >> nClippingMode; + sal_Int32 iMode, cbRgnData; + *pWMF >> cbRgnData + >> iMode; - if ( ( nIndex == 0 ) && ( nClippingMode == RGN_COPY ) ) - { - PolyPolygon aEmptyPolyPoly; - pOut->SetClipPath( aEmptyPolyPoly, RGN_COPY ); - } + PolyPolygon aPolyPoly; + if ( cbRgnData ) + ImplReadRegion( aPolyPoly, *pWMF, nRecSize ); + pOut->SetClipPath( aPolyPoly, iMode, sal_False ); } break; |