图片转换为缩略图(Byte->Byte)

float _thumbnail_X = 0;
float _thumbnail_Y = 0;
int _thumbnail_Width = 480;
int _thumbnail_Height = 480;
//新建内存变量存储原图数据
MemoryStream _sourceImage_MemoryStream = new MemoryStream();
_sourceImage_MemoryStream.Write(sourceByteImage, 0, sourceByteImage.Length);
//绘制原图片
Image _sourceImage = Image.FromStream(_sourceImage_MemoryStream);
//创建缩略图
Image _thumbnail = new Bitmap(_thumbnail_Width, _thumbnail_Height);
//开始绘制缩略图
Graphics _g = Graphics.FromImage(_thumbnail);
RectangleF _sourceRect = new RectangleF(sourceX, sourceY, sourceWidth, sourceHeight);
RectangleF _thumbnailRect = new RectangleF(_thumbnail_X, _thumbnail_Y, _thumbnail_Width, _thumbnail_Height);
_g.DrawImage(_sourceImage, _thumbnailRect, _sourceRect, GraphicsUnit.Pixel);
_g.Save();
//新建内存变量保存缩略图数据
MemoryStream _thumbnail_MemoryStream = new MemoryStream();
_thumbnail.Save(_thumbnail_MemoryStream, ImageFormat.Jpeg);
//新建数据组保存图片数据
byte[] _thumbnailByte = new byte[_thumbnail_MemoryStream.Length];
_thumbnail_MemoryStream.Position = 0;
_thumbnail_MemoryStream.Read(_thumbnailByte, 0, Convert.ToInt32(_thumbnail_MemoryStream.Length));
//关闭、释放资源

_sourceImage_MemoryStream.Dispose();

_sourceImage.Dispose();

_thumbnail.Dispose();

_thumbnail_MemoryStream.Dispose();

_sourceImage_MemoryStream.Close();

_thumbnail_MemoryStream.Close();

转载于:https://www.cnblogs.com/xuhaifeng/p/7344201.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值