请问如何通过HBITMAP得到图片所有数据

Michael_ee 2013-01-05 08:36:55
项目要求拷贝屏幕的一部分, 并通过网络传输到服务端显示, 我已经可以拷贝屏幕后, 得到HBITMAP型数据, 再用CImage类,将其存为jpg文件, 再将jpg文件传到服务端显示了. 但是, 我想不生成中间的jpg文件, 直接由HBITMAP型变量转为一个数组数据, 将数组数据传到服务端后, 直接显示, 不如该如何做?
...全文
257 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Michael_ee 2013-01-05
  • 打赏
  • 举报
回复
但是, 如果反复生成JPEG或GIF图片的话, 要对硬盘进行多次读写, 是否降低效率和损害硬盘?有无办法不用对硬盘读写, 只放在内存中, 然后生数组发出去?
傻X 2013-01-05
  • 打赏
  • 举报
回复
不建议使用该方法,原因就是位图的数据存储量还是太大了。JPEG和GIF还是最好的。
zgl7903 2013-01-05
  • 打赏
  • 举报
回复
GetBitmapBits GetDIBits
Michael_ee 2013-01-05
  • 打赏
  • 举报
回复
这也是一个办法, 只是算法比较复杂些!
wltg2001 2013-01-05
  • 打赏
  • 举报
回复
用GetDIBits是可以得到相关数据的,但是这种数据是基于位图的,数据量确实太大。另外一个想法是,你可以将屏幕分成若干块,比如分成8块,或是16块,只传发生变化的那一块的数据,这种处理方式数据量要少得多。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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