求教!关于双缓冲和Bitbit

gameice 2009-11-18 10:24:27
用双缓冲的话 BitBlt 是不是不支持png图像从缓冲DC复制到DC?



那该怎么处理啊?

一开始我用GDI+的方式操作,但是显示不出图像.后来

我试着用atlimage.h里的

CImage cimg;
HRESULT ret =cimg.Load(fileName);
HBITMAP hbmp=cimg.Detach();

这样据说可以像操作 BMP 图片一样处理图片

但还是显示不出来? win32应用
...全文
116 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
gameice 2009-11-18
  • 打赏
  • 举报
回复
那还有其他函数能用上吗?
xingzhe2001 2009-11-18
  • 打赏
  • 举报
回复
StretchDIBits 把一个void*拷贝到hdc上,void*是像素数据
gameice 2009-11-18
  • 打赏
  • 举报
回复
BItbit有两个操作DC StretchDIBits只有一个 获取缓冲区的矩形作用到DC上?
gameice 2009-11-18
  • 打赏
  • 举报
回复
对啊 就是看了这句我才想用这个函数试试不过不会太用 汗
xingzhe2001 2009-11-18
  • 打赏
  • 举报
回复
Windows 98/Me, Windows 2000/XP: StretchDIBits has been extended to allow a JPEG or PNG image to be passed as the source image.

gameice 2009-11-18
  • 打赏
  • 举报
回复
成功了 bmp图像完全没有问题

另外单独进行测试
BeginPaint(hWnd, &ps);

EndPaint(hWnd, &ps);

的中间gdi+加载的PNG也可以显示.


不知道 StretchDIBits行不行,但这个函数不太会用.
xingzhe2001 2009-11-18
  • 打赏
  • 举报
回复
BMP图片你bitblt成功了么?
gameice 2009-11-18
  • 打赏
  • 举报
回复
问题已经解决 用到了 GdiplusStartupInput

8,325

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧