Public Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Longe.g. Debug.Print GetPixel(picture1.hDC,10,10)好了,拿分来!
不过我事先已经通过把图像读入内存了阿. Private Type typeLoadPic '跟踪数组 FilePath As String LoadDate As Date BmpWidth As Integer BmpHeight As Integer BmpPicture As StdPicture End Type先通过上面的定义.其次我把他们读到内存.应该有什么办法的.我只不过想更快速的从内存读取. 我只处理bmp文件.而且我不想用point这个东西来获取象素(内存中图片的象素),因为用point一定要picture1对象.我并不想调入,当图片比较大的时候,就慢了.那么getdibits可以实现吗?
Public Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long 中,x,y是逻辑坐标,是否可以把他们设置成ScoleMode=Pixel 再执行。因为我首先得到了像素的宽高。
其中的x,y是不是象素宽高,hdc是?????翻书去看看
我不知道你是否只处理 BMP,如果是,可以用 LoadImage() 和 GetDIBits() 较快活得指定像素的信息。可能会比 LoadPicture() 快。
Private Type typeLoadPic '跟踪数组
FilePath As String
LoadDate As Date
BmpWidth As Integer
BmpHeight As Integer
BmpPicture As StdPicture
End Type先通过上面的定义.其次我把他们读到内存.应该有什么办法的.我只不过想更快速的从内存读取.
我只处理bmp文件.而且我不想用point这个东西来获取象素(内存中图片的象素),因为用point一定要picture1对象.我并不想调入,当图片比较大的时候,就慢了.那么getdibits可以实现吗?
中,x,y是逻辑坐标,是否可以把他们设置成ScoleMode=Pixel 再执行。因为我首先得到了像素的宽高。