位图的巧妙运算得到透明图片的效果
来源:互联网 发布:微信小游戏 源码 编辑:程序博客网 时间:2024/05/09 02:40
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1);//载入底层位图
BITMAP bmp;
bitmap.GetBitmap(&bmp);
int nWidth = bmp.bmWidth;
int nHeight = bmp.bmHeight;
CDC dcMem;
dcMem.CreateCompatibleDC(pDC);
dcMem.SelectObject(&bitmap);
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCCOPY);//将底层位图打印
bitmap.DeleteObject();
bitmap.LoadBitmap(IDB_BITMAP2);//载入做掩膜运算的图片
bitmap.GetBitmap(&bmp);
nWidth = bmp.bmWidth;
nHeight = bmp.bmHeight;
dcMem.SelectObject(&bitmap);
CDC dcMask;
dcMask.CreateCompatibleDC(pDC);
CBitmap bitmapMask;
bitmapMask.CreateBitmap(nWidth, nHeight, 1, 1, NULL);//创建单色的掩码位图
dcMask.SelectObject(bitmapMask);
dcMem.SetBkColor(RGB(0, 0, 0));//此颜色为做掩膜运算中需要显示部分的颜色,将其设置为透明色
dcMask.BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCCOPY);//则dcMask中对应透明色的部分为白色,其他为黑色
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCINVERT);//首先与底层图片异或一次
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMask, 0, 0, SRCAND);//与掩码位图与一次将留下对应透明色的部分
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCINVERT);//再异或一次将对应透明色的部分还原为底层图片,而其他部分变为做掩膜运算的图片
bitmap.LoadBitmap(IDB_BITMAP1);//载入底层位图
BITMAP bmp;
bitmap.GetBitmap(&bmp);
int nWidth = bmp.bmWidth;
int nHeight = bmp.bmHeight;
CDC dcMem;
dcMem.CreateCompatibleDC(pDC);
dcMem.SelectObject(&bitmap);
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCCOPY);//将底层位图打印
bitmap.DeleteObject();
bitmap.LoadBitmap(IDB_BITMAP2);//载入做掩膜运算的图片
bitmap.GetBitmap(&bmp);
nWidth = bmp.bmWidth;
nHeight = bmp.bmHeight;
dcMem.SelectObject(&bitmap);
CDC dcMask;
dcMask.CreateCompatibleDC(pDC);
CBitmap bitmapMask;
bitmapMask.CreateBitmap(nWidth, nHeight, 1, 1, NULL);//创建单色的掩码位图
dcMask.SelectObject(bitmapMask);
dcMem.SetBkColor(RGB(0, 0, 0));//此颜色为做掩膜运算中需要显示部分的颜色,将其设置为透明色
dcMask.BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCCOPY);//则dcMask中对应透明色的部分为白色,其他为黑色
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCINVERT);//首先与底层图片异或一次
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMask, 0, 0, SRCAND);//与掩码位图与一次将留下对应透明色的部分
pDC->BitBlt(0, 0, nWidth, nHeight, &dcMem, 0, 0, SRCINVERT);//再异或一次将对应透明色的部分还原为底层图片,而其他部分变为做掩膜运算的图片
- 位图的巧妙运算得到透明图片的效果
- 位图的巧妙运算得到透明图片的效果
- 透明位图的显示
- 透明位图的显示
- 透明位图的显示
- 透明色的位图
- 透明位图的显示
- 透明位图的绘制
- 透明位图的显示
- 位图的透明显示
- 透明位图的显示
- 透明位图的显示
- 透明位图的显示
- 透明位图的显示
- 透明位图的显示
- 关于图片透明效果的实现
- SWT实现的图片透明效果
- SWT实现的图片透明效果
- 编程中国-中国最大的编程网站 %D%A [推荐编程网站]
- NMEA数据消息说明
- POJ 1573 Robot Motion 模拟
- 右键菜单
- android map key申请
- 位图的巧妙运算得到透明图片的效果
- vb.net调试和理解一些公共的Function和MSDN的类
- 将Excel数据快速大批量导入数据库的代码
- GPS 车辆导航定位的应用前景
- 让弹出层弹到flash上面
- 好消息:谷歌宣布推出Dart编程新语言
- sql_trace跟踪工具
- MFC画图 :画数字
- 摄像头集中监控软件系统