VB 如何获取屏幕图片数据保存在一个二进制数组里面?
VB程序中我会用Open"c:\1.bmp"ForBinaryAs#1读取一个bmp图片文件数据保存在一个二进制数组中!可是如何获取屏幕图片数据保存在一个二进制数组里面?...
VB程序中我会用Open "c:\1.bmp" For Binary As #1 读取一个bmp图片文件数据保存在一个二进制数组中!可是如何获取屏幕图片数据保存在一个二进制数组里面?这个二进制数据要和Open语句读取的数据一样,其中包括文件头信息和图片数据,该怎么实现?我不想先生成BMP图片文件以后再用Open语句读取,请高手不吝赐教!在线等。。。我QQ271072330 分就这么多了,还请凉解!先谢了!
展开
1个回答
展开全部
'假设Form 上已经存在Picture1的控件,并已经设置好图片
Dim PBag As New PropertyBag
Dim B() As Byte
PBag.WriteProperty "Picture", Picture1.Picture
'读取Picture1.Picture 图片并写到 Pbag 容器中
B = PBag.Contents '获取容器Byte 到 B() 数组中
'这时 B 就时我们想要获得的Byte数组
'读取 Byte() 数组内容到 Picture
PBag.Contents = B '指定 PBag容器的内容
'读取容器中运让毁的图片
Set Picture1.Picture = PBag.ReadProperty("Picture")
简单的几句代码就可以完成从图片到Byte() ,从Byte()到图滑扰片的转换。而且其保存和读取的格式都是使用了原始格式,即:如果你的图片框读入的是Jpg图片格式,则保存的Byte()数组也是该Jpg格式的数旁备组,而非普通位图的数组,所以你也不用担心转换后的数组很没有压缩,很大。
Dim PBag As New PropertyBag
Dim B() As Byte
PBag.WriteProperty "Picture", Picture1.Picture
'读取Picture1.Picture 图片并写到 Pbag 容器中
B = PBag.Contents '获取容器Byte 到 B() 数组中
'这时 B 就时我们想要获得的Byte数组
'读取 Byte() 数组内容到 Picture
PBag.Contents = B '指定 PBag容器的内容
'读取容器中运让毁的图片
Set Picture1.Picture = PBag.ReadProperty("Picture")
简单的几句代码就可以完成从图片到Byte() ,从Byte()到图滑扰片的转换。而且其保存和读取的格式都是使用了原始格式,即:如果你的图片框读入的是Jpg图片格式,则保存的Byte()数组也是该Jpg格式的数旁备组,而非普通位图的数组,所以你也不用担心转换后的数组很没有压缩,很大。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询