Transparent eraser settings in Qt (can erase other colors, restore transparent color background)

Set the transparent eraser method in Qt , through setCompositionMode ( QPainter :: CompositionMode_Clear )

to fulfill.

Qpainter *painter

painter->setRenderHint(QPainter::Antialiasing,true);

if ( m_isdraw == true )//judging whether it is a writing pen or an eraser

{ painter->setCompositionMode(QPainter::CompositionMode_SourceOver); painter->setPen(element->m_pen); }

else{                   

painter -> setCompositionMode ( QPainter :: CompositionMode_Clear );}//The eraser is set to erase and transparent.

painter -> drawPath ( path ); //Then draw.

Guess you like

Origin blog.csdn.net/liujing_sy/article/details/100161106