diff options
Diffstat (limited to 'sw/source/core/doc/notxtfrm.cxx')
-rw-r--r-- | sw/source/core/doc/notxtfrm.cxx | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/sw/source/core/doc/notxtfrm.cxx b/sw/source/core/doc/notxtfrm.cxx index fb8355880843..4d707dfd7f4f 100644 --- a/sw/source/core/doc/notxtfrm.cxx +++ b/sw/source/core/doc/notxtfrm.cxx @@ -819,9 +819,10 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons if( pGrfNd ) { // Fix for bug fdo#33781 + const sal_uInt16 nFormerAntialiasingAtOutput( pOut->GetAntialiasing() ); if (pShell->Imp()->GetDrawView()->IsAntiAliasing()) { - pOut->SetAntialiasing( ANTIALIASING_ENABLE_B2DDRAW ); + pOut->SetAntialiasing( nFormerAntialiasingAtOutput | ANTIALIASING_ENABLE_B2DDRAW ); } sal_Bool bForceSwap = sal_False, bContinue = sal_True; @@ -938,8 +939,12 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons if( bSwapped && bPrn ) bForceSwap = sal_True; } + if( bForceSwap ) pGrfNd->SwapOut(); + + if ( pShell->Imp()->GetDrawView()->IsAntiAliasing() ) + pOut->SetAntialiasing( nFormerAntialiasingAtOutput ); } else if( bIsChart //charts must be painted resolution dependent!! #i82893#, #i75867# @@ -952,15 +957,18 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons } else if( pOLENd ) { - // #i99665# - // Adjust AntiAliasing mode at output device for chart OLE + // Fix for bug fdo#33781 const sal_uInt16 nFormerAntialiasingAtOutput( pOut->GetAntialiasing() ); - if ( pOLENd->IsChart() && - pShell->Imp()->GetDrawView()->IsAntiAliasing() ) + if (pShell->Imp()->GetDrawView()->IsAntiAliasing()) { - const sal_uInt16 nAntialiasingForChartOLE = - nFormerAntialiasingAtOutput | ANTIALIASING_PIXELSNAPHAIRLINE; - pOut->SetAntialiasing( nAntialiasingForChartOLE ); + sal_uInt16 nNewAntialiasingAtOutput = nFormerAntialiasingAtOutput | ANTIALIASING_ENABLE_B2DDRAW; + + // #i99665# + // Adjust AntiAliasing mode at output device for chart OLE + if ( pOLENd->IsChart() ) + nNewAntialiasingAtOutput |= ANTIALIASING_PIXELSNAPHAIRLINE; + + pOut->SetAntialiasing( nNewAntialiasingAtOutput ); } // <-- @@ -1006,13 +1014,8 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons ((SwFEShell*)pShell)->ConnectObj( pOLENd->GetOLEObj().GetObject(), pFly->Prt(), pFly->Frm()); } - // #i99665# - if ( pOLENd->IsChart() && - pShell->Imp()->GetDrawView()->IsAntiAliasing() ) - { + if ( pShell->Imp()->GetDrawView()->IsAntiAliasing() ) pOut->SetAntialiasing( nFormerAntialiasingAtOutput ); - } - // <-- } } |