VB用GetDIBits获取电脑屏幕的RGB值,如何快速转化为像素值

wuganxiu 2017-06-28 03:39:44
大家好,VB用GetDIBits获取电脑屏幕的RGB值,如何快速转化为像素值
...全文
383 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
袁梦 2017-07-02
  • 打赏
  • 举报
回复
首先获取桌面窗口的DC,用GetDC(0)或者GetWindowDC(0)获取,然后就调用你那个函数
of123 2017-06-29
  • 打赏
  • 举报
回复
他指的,应该是 pixel value。 Each of the pixels that represents an image stored inside a computer has a pixel value which describes how bright that pixel is, and/or what color it should be. 不过,它的问题有些奇怪。他所指的究竟是哪一种 pixel format。如果就是 RGB 格式的话,那就不用转换。 我猜,他可能是要转成 32-bit 有符号数或浮点数格式。无论如何,在网上都能查到转换方法。甚至可以根据格式定义自己写代码。
赵4老师 2017-06-29
  • 打赏
  • 举报
回复
江山代有奇葩出, 一代新葩换旧葩。
脆皮大雪糕 2017-06-28
  • 打赏
  • 举报
回复
GetDIBits 不是会返回一个 BITMAPINFO么,这里面包含了BITMAPINFOHEADER 结构体。 BITMAPINFOHEADER 中biWidth和biHeight不就是你取得的bitmap的款和高?而且这里面还有很多其他信息比如色深之类的
zdingyun 2017-06-28
  • 打赏
  • 举报
回复
VB用GetDIBits获取电脑屏幕的RGB值,如何快速转化为像素值,如此奇怪的问题7年前也有人提及: RGB值和像素值相互转换 一个RGB来值就是获得的改点像素的颜色值,是个长整数。 像素值,来自相机所说的像素,其实是最大像素的意思,像素是分辨率的单位,这个像素值仅仅是相机所支持的有效最大分辨率。 30万 640×480 50万 800×600 80万 1024×768 RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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