让代码更简单

VisionPro保存cogRecordDisplay图像

重要:本文最后更新于2020-11-27 14:45:23,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

保存图片的方法很多,只要拿到图片对象bitmap或者image,我们就可以使用C#的save方法,将图片对象存储到磁盘中,那么如何在visionpro中拿到图片对象呢?有几种方法,最简单的就是使用相机直接拍照,拍完会返回一个image图像。其次就是visionpro工具运行后会产生图像信息,outputimage这个也是image对象。然后就是record图像信息了,这也是本文主要讲解的内容,先看效果,如下图所示。

VisionPro保存cogRecordDisplay图像

VisionPro保存cogRecordDisplay图像

点击第二个按钮就会将cogRecordDisplay显示的图像存储到debug文件夹下,下面是详细代码。


隐藏内容,解锁需要开通VIP
登录/注册

其中,重点在于CreateContentBitmap方法的使用,这个方法官方给的说明是

Returns the current content of the display (image and graphics) as a bitmap in a picture object.
大概的意思是将显示控件中的图像作为一个位图对象返回。英语不是很好大家见谅。

注意:由于CreateContentBitmap方法返回的是32位位图,在visionpro中可能打不开,为防止这种情况出现,官方推荐先将其转换为24位位图再保存!

转换参考如下代码:

复制
Bitmap aBM = isaf as Bitmap;
Bitmap aBM2 = aBM.Clone(new RectangleF(0, 0, aBM.Width, aBM.Height), PixelFormat.Format24bbpRgb);

最后再使用aBM2对象的save方法保存即可。

感觉很棒!可以赞赏支持我哟~

16 打赏

评论 (2)

登录后评论
注册还要开会员才能看?
部分内容需要。
QQ咨询 邮件咨询 狗哥推荐