图片已经被保存到数组BMPData当中了,我用专家告诉我的GetPictureFromByteStream方法把图片显示到picturebox中,再用GetPixel(Picture1.hdc, 30, 4)去获取某点的象素值。今天才发现,其实这里我走了弯路,因为我并不需要把图片显示出来!有什么好办法,可以直接在内存中就直接取得这个图片某位置的pixel值呢,就象对picturebox操作一样?

解决方案 »

  1.   

    GetPictureFromByteStream方法就是为了把内存中的图片的二进制数组表达在picturebox中显示出来,见http://topic.csdn.net/u/20071231/21/d2a8fbab-3597-410e-8e29-7bb2a67eeff6.html。走了弯路了,我不需要显示,而直接实现去获取某个点的象素值。不知道我说明白了没有,希望大家帮助我!
      

  2.   

    说白了就是:
    我的图片被保存到了二进制数组中了,现在不能用把图片存到外存再读出来在picturebox中处理,而是直接依靠这个二进制数组实现获取图片中某个点的象素(RGB)值
      

  3.   

    那你就必须自己解释图片文件格式。所以用 Picture 可以免去这一层麻烦。