读书人

bitblt 绘图 阴影处理解决方案

发布时间: 2012-02-04 15:43:08 作者: rapoo

bitblt 绘图 阴影处理
双缓冲绘图
先做了一张 bitmap 然后用了一张mask bitmap
用bitblt SRCINVERT ,SRCAND ,SRCINVERT
处理后别的地方多没问题,
就是原本图片阴影的地方有问题

我该怎么处理带阴影的图片呢。

[解决办法]
啥问题
[解决办法]
你把你这个过程

bitblt SRCINVERT ,SRCAND ,SRCINVERT

说详细点

还有,你说有问题,哪到底是什么问题?
[解决办法]
预先定义的名字
布尔操作
透明仿真中的用途

SRCCOPY
src
直接将源拷贝到目的

SRCAND
src AND dest
将目标文件中对应于源文件黑色区域的部分变黑,将对应于白色区域的部分留着不动

SRCINVERT
src XOR dest
将源插入到目标。二次使用时,将目标恢复到它原来的状态。在某种条件下可以代替SRCPAINT 操作

SRCPAINT
src OR dest
将源文件中的非白色区域刷到目标文件中。源中的黑色区域不转换到目标中。

SetBkColor(hdcSrc, rgbTransparent);BitBlt(hdcMask, 0, 0, dx, dy, hdcSrc, x0, y0, SRCCOPY);

SetBkColor(hdcSrc, RGB(0,0,0));
// 1s --> black (0x000000)SetTextColor(hdcSrc, RGB(255,255,255));
// 0s --> white (0xFFFFFF)BitBlt(hdcSrc, x0, y0, dx, dy, hdcMask, 0, 0, SRCAND);

读书人网 >C++

热点推荐