У меня есть фотобумага VB6, которая получает изображение с устройства видеозахвата.Преобразование изображения в байт-массив в VB6
Я пытаюсь выяснить, как преобразовать окно изображения в массив байтов.
У меня есть фотобумага VB6, которая получает изображение с устройства видеозахвата.Преобразование изображения в байт-массив в VB6
Я пытаюсь выяснить, как преобразовать окно изображения в массив байтов.
Private Type BITMAP
bmType As Long
bmWidth As Long
bmHeight As Long
bmWidthBytes As Long
bmPlanes As Integer
bmBitsPixel As Integer
bmBits As Long
End Type
Private Declare Function GetObject Lib "gdi32" Alias "GetObjectA" (ByVal hObject As Long, ByVal nCount As Long, lpObject As Any) As Long
Private Declare Function GetBitmapBits Lib "gdi32" (ByVal hBitmap As Long, ByVal dwCount As Long, lpBits As Any) As Long
Private Sub GetPictureBytes()
Dim PicBits() As Byte, PicInfo As BITMAP
GetObject Picture1.Picture, Len(PicInfo), PicInfo
ReDim PicBits((PicInfo.bmWidth * PicInfo.bmHeight * 3) - 1) As Byte
GetBitmapBits Picture1.Picture, UBound(PicBits), PicBits(0)
End Sub
Прошло много времени с тех пор, как я работал с VB6, но, насколько я помню, вы можете просто сериализовать изображение в PropertyBag
и получить содержимое в виде байтового массива.
Единственная альтернатива, которую я знаю, требует интенсивного использования WinAPI для достижения того же.
Можете ли вы опубликовать образец кода – Smith 2013-04-02 13:17:57
, а что делать в обратном порядке, а также вы также можете отправить код с кодом собственности? – Smith 2013-04-02 12:53:56