读书人

AlphaBlend使用

发布时间: 2012-04-12 15:46:35 作者: rapoo

AlphaBlend使用求助
//创建缓冲
CDC BufferDC;
CBitmap ImageBuffer;
BufferDC.CreateCompatibleDC(&dc);
ImageBuffer.CreateCompatibleBitmap(&dc,rcClient.Width(),rcClient.Height());
BufferDC.SelectObject(&ImageBuffer);
//绘画背景
CImageHandle BackImageHandle(&m_ImageBack1);
//m_ImageBack1.BitBlt(BufferDC,0,0);

BLENDFUNCTION bf;
memset(&bf,0,sizeof(bf));
bf.BlendOp = AC_SRC_OVER;
bf.SourceConstantAlpha = 120;
// blend old image on top of new, in temporary DC
BufferDC.AlphaBlend(0,0,rcClient.Width(),rcClient.Height(),
&dc,
0,0,rcClient.Width(),rcClient.Height(),
bf);

// copy scratch bits to screen
m_ImageBack1.BitBlt(BufferDC, 0, 0);


这里的AlphaBlend为什么不生效?


[解决办法]
没用过, AlphaBlend 是什么?

读书人网 >C++

热点推荐