VB 如何获取图片数据到三维数组!急!急!

来源:百度知道 编辑:UC知道 时间:2024/05/09 10:11:28
以前获取一幅图片(例 C:\1.bmp)数据,都是用 GetDIBits (Picture1.hdc, iBitmap, 0&, H1, ColVal1(0, 0, 0), bi24BitInfo, 0&)函数 来获取图片红,绿,蓝 三色分量和坐标到三维数组ColVal1(2, W1, H1)中, 但是用此函数必须加个Picture1控件或窗体控件才能实现!能不能不用控件直接读取C:\1.bmp 的图片数据到三维数组ColVal1(2, W1, H1)中?0-2存放 红,绿,蓝 0-W1存放横坐标,0-H1 存放纵坐标!若能只存放像素值不放坐标也可以!总之就是不通过控件读取图片数据(像素)到一个数组(一个存放红,绿,蓝的数组)中就可以!还不望高手赐教!谢谢!我QQ271072330

可以。
越过bmp文件的头部
从正式数据开始,四个字节为一个像素,像素顺序是从左向右,行次顺序是从上向下。
四个字节实际上你可以使用long类型变量yanse来读取。
然后
红=(yanse & &Hff0000)/&H10000
绿=(yanse & &Hff00)/&H100
蓝=yanse & &Hff