社区
界面
帖子详情
怎么将一个DC上的内容复制到CBitmap类型的图片上,速度求帮助
wanglu343280746
2013-06-27 06:01:35
现在我有个内存DC CDC memdc;接下来我会在memdc上面绘图;
现在有个CBitmap bitmap; 怎么将我在memdc上面画的图保存在bitmap里面呢。
我只做了一步bitmap.CreateCompatibleBitmap(&memdc, 宽,高);
然后就在memdc上开始画图了,最后bitmap里面没有内容,只是黑色的背景,这个怎么办啊?
怎样才能让bitmap里面保存到memdc的内容呢?
...全文
209
7
打赏
收藏
怎么将一个DC上的内容复制到CBitmap类型的图片上,速度求帮助
现在我有个内存DC CDC memdc;接下来我会在memdc上面绘图; 现在有个CBitmap bitmap; 怎么将我在memdc上面画的图保存在bitmap里面呢。 我只做了一步bitmap.CreateCompatibleBitmap(&memdc, 宽,高); 然后就在memdc上开始画图了,最后bitmap里面没有内容,只是黑色的背景,这个怎么办啊? 怎样才能让bitmap里面保存到memdc的内容呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
w327115047
2014-05-09
打赏
举报
回复
CDC memDC;//内存DC CBrush *pBrush = CBrush::FromHandle((HBRUSH)GetStockObject(NULL_BRUSH)); memDC.CreateCompatibleDC(pDC); CBitmap memBitmap, *oldmemBitmap;//建立和屏幕兼容的bitmap memBitmap.CreateCompatibleBitmap(pDC, Width, Height); oldmemBitmap = memDC.SelectObject(&memBitmap);//将memBitmap选入内存DC memDC.BitBlt(0, 0, Width, Height, pDC, 0, 0, SRCCOPY);//复制屏幕图像到内存DC memDC.SelectObject(pBrush); /*图形绘制代码 */ 这时候memBitmap 里面就保存了你绘制的图形了
向立天
2013-07-29
打赏
举报
回复
您好 我是本版版主 此帖已多日无人关注 请您及时结帖 如您认为问题没有解决可按无满意结帖处理 另外本版设置了
疑难问题汇总帖
并已在版面置顶 相关规定其帖子中有说明 您可以根据规定提交您帖子的链接 如您目前不想结帖只需回帖说明 我们会删除此结帖通知 见此回复三日内无回应 我们将强制结帖 相关规定详见界面
界面版关于版主结帖工作的具体办法
schlafenhamster
2013-06-28
打赏
举报
回复
oldmemBitmap = memDC.SelectObject(&memBitmap);//将memBitmap选入内存DC memDC.BitBlt(0, 0, Width, Height, pDC, 0, 0, SRCCOPY);//复制屏幕图像到内存DC
memDC.SelectObject(oldmemBitmap);
这样 memBitmap 就可以用了
yaozhiyong110
2013-06-28
打赏
举报
回复
自己去研究下双缓冲原理 都是在dc上画...
yaozhiyong110
2013-06-28
打赏
举报
回复
你那个位图就是底色 memDC本来画的就是画到pDC里面去了 怎么会画到bitmap里?
wanglu343280746
2013-06-27
打赏
举报
回复
引用 1 楼 lgstudyvc 的回复:
bitblt(,,,,,,) msdn
不行啊,我试过,可能我用的方法不对吧,你能具体讲一下吗? CDC memDC;//内存DC memDC.CreateCompatibleDC(pDC); CBitmap memBitmap, *oldmemBitmap;//建立和屏幕兼容的bitmap memBitmap.CreateCompatibleBitmap(pDC, Width, Height); oldmemBitmap = memDC.SelectObject(&memBitmap);//将memBitmap选入内存DC memDC.BitBlt(0, 0, Width, Height, pDC, 0, 0, SRCCOPY);//复制屏幕图像到内存DC 我用的这个方法,这个memmBitmap里面应该保存pDC上内容 对吗?
lgstudyvc
2013-06-27
打赏
举报
回复
bitblt(,,,,,,) msdn
关于双缓冲绘图(下)
本文介绍了MFC中实现内存缓冲绘图的方法,通过在内存中创建与屏幕兼容的
DC
和
Bitmap
,实现在内存中绘图,再将内存中的
图片
快速
复制
到屏幕上,提高绘图效率。
关于双缓冲绘图之二
本文介绍了一种通过内存缓冲提高绘图性能的方法。该方法利用内存中的位图进行绘图操作,然后将其
复制
到屏幕,避免了每次绘图时的重复计算。文章详细解释了如何在MFC框架下实现这一过程,包括创建兼容位图、选择对象及拷贝位图等步骤。
避免闪烁的方法(OnEraseBkgnd)
本文详细解释了图形图象处理编程中的双缓冲技术,如何解决重绘时的闪烁现象,包括屏蔽背景刷新、内存缓冲作图等关键步骤,并通过实例代码展示具体实现过程。
VC6环境下可直接运行的C++小游戏源码包:含跳跃、太空射击、贪吃蛇变体等15个完整项目
提供15个基于Visual C++ 6.0开发的小游戏完整源码,包括Jumper(平台跳跃)、UFO 2(太空射击)、Henway 2(农场抓鸡)、Planets 2(行星引力模拟)、Brainiac(逻辑解谜)、Roids(小行星躲避)、LightCycles(光轮竞速)等。所有项目均附带VC6工程文件(.dsw)、资源素材(GIF动画、AI格式界面图、背景图)及清晰目录结构(Chap04至Chap23),开箱即用,无需额外配置。代码包含基础输入处理、双缓冲绘图、简单碰撞检测、状态机控制和帧率管理等典型实
ГОСТ 32015-2012.pdf
ГОСТ 32015-2012.pdf
界面
15,976
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章