C#使用SnsPictureBox.dll显示图像,自带缩放和平移功能,带预览图调整显示区域。

CSDN下载地址:https://download.csdn.net/download/sns1991sns/87726867 

gitee下载地址:https://gitee.com/linsns/SnsPictrueBox 

使用SnsPixtureBox显示图像具有以下三大优势:

一、便捷性:

1、输入接口多,支持的输入类型有Bitmap(图像),byte[](图像数据),  Intptr(图像数据地址)等。

2、可直接在线程里执行图像显示,不需要使用委托。

二、功能性

1、可以鼠标操作图像,在鼠标位置对图像进行放大缩小平移。

2、当图像不处于全部视野时,右下角会有出现预览图,可在预览图里快速调整图像显示区域。

3、可轻松绘制点、直线、  矩形、填充矩形、圆形、填充圆形、扇形、填充扇形、多边形、填充多边形。

4、可查看当前鼠标位置处的图像坐标和像素点RGB值。

5、可轻松绘制Roi,可调整的Roi。

三、高效性

1、输入接口使用byte[](图像数据),  Intptr(图像数据的地址),图像显示帧率会比使用Bitmap高,也就是SnsPixtureBox会比原生的PixtureBox显示帧率高,最高能达到60帧每秒。

2、SnsPixtureBox支持使用OpenGL,当图像分辨率较大时,使用OpenGL绘图能较大提高显示帧率和稳定性。

使用说明

1、显示图像(输入接口为Bitmap)

Bitmap bitmap = (Bitmap)Image.FromFile(@"nature.jpg");
snsPictureBox1.Image = bitmap;

2、显示图像(输入接口为byte[])

Bitmap bitmap = (Bitmap)Image.FromFile(@"nature.jpg");
BitmapData mapData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly, bitmap.PixelFormat);
bitmap.UnlockBits(mapData);
byte[] imgData = new byte[mapData.Stride*mapData.Height];
Marshal.Copy(mapData.Scan0,imgData, 0, imgData.Length);
snsPictureBox1.ShowImage(imgData,bitmap.Width, bitmap.Height, bitmap.PixelFormat);

3、显示图像(输入接口为Intptr)

Bitmap bitmap = (Bitmap)Image.FromFile(@"nature.jpg");
BitmapData mapData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly, bitmap.PixelFormat);
snsPictureBox1.ShowImage(mapData.Scan0, bitmap.Width, bitmap.Height, bitmap.PixelFormat);
bitmap.UnlockBits(mapData);

显示效果 

技术交流

QQ群: 577276243

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宇云雨巷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值