社区
图形处理/算法
帖子详情
关于HDC绘图
kiss_xiao0968
2009-08-12 11:30:33
我想问下,我通过HDC在内存中绘制的图形,贴到窗体的DC上后,会有背景色,如何取消内存绘制图形附带的背景颜色?
...全文
1963
7
打赏
收藏
关于HDC绘图
我想问下,我通过HDC在内存中绘制的图形,贴到窗体的DC上后,会有背景色,如何取消内存绘制图形附带的背景颜色?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
NoMore
2012-04-07
打赏
举报
回复
我很想知道怎么在DC上画图的??能告诉我吗?楼主closemyeyes@126.com
AlexChan1981
2009-08-13
打赏
举报
回复
[Quote=引用 2 楼 skybblue 的回复:]
你可以将要到位置的画到内存DC中,然后再在上面绘图,这样内存DC的背景色就和要贴的位置一样了,就没影想了,要么只能使用透明方法了,网上有很多这样的帖子,自己搜一搜.
[/Quote]
这是比较常用的方法。
Soyokaze
2009-08-12
打赏
举报
回复
可以去除,前提是背景色是单一的颜色。方法是采用颜色键控法,可以调用TransparentBlt(),或者用BitBlt()结合合适的ROP2参数来实现。
skybblue
2009-08-12
打赏
举报
回复
你可以将要到位置的画到内存DC中,然后再在上面绘图,这样内存DC的背景色就和要贴的位置一样了,就没影想了,要么只能使用透明方法了,网上有很多这样的帖子,自己搜一搜.
副组长
2009-08-12
打赏
举报
回复
你可以获得内存DC的存储地址,取来像素看看是不是背景,不是背景在送到设备DC上去。
ys19011
2009-08-12
打赏
举报
回复
方法一:TransparentBlt(),将最后一个参数,设置成你内存DC的背景色(一般是RGB(0,0,0))。使用此方法时,最好SrcDC和DstDC的保持一致,SrcDC绝对不能越界
方法二:
使用BitBlt,(假设你的内存DC为A、当前DC为B、掩码DC(对应A的掩码DC)为C)
1. 确定A中需要透过的背景色;
2. 将A以SRCINVERT的方式拷贝到B;
3. 将C以SRCAND的方式拷贝到B
4. 再将A以SRCINVERT的方式拷贝到B;
ok了
写不动代码的人
2009-08-12
打赏
举报
回复
设置透明
7.1 如何通过
HDC
获得CDC指针
如何通过
HDC
获得CDC指针, VC学习好资料
CDC与
HDC
区别与转换
CDC与
HDC
区别与转换,资料详尽,值得下载
易语言判断
HDC
易语言判断
HDC
源码,判断
HDC
,CreateCompatibleDC,DeleteDC,GetDC,GetObjectType,ReleaseDC,WindowFromDC
易语言源码易语言判断
HDC
源码.rar
易语言源码易语言判断
HDC
源码.rar
HDC
与CDC相互转换[文].pdf
HDC
与CDC相互转换[文].pdf
图形处理/算法
19,472
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章