使用SixLabors.ImageSharp 进行图片的缩放C#.net core,可跨平台运行
引用命令空间
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Formats.Png;
using SixLabors.ImageSharp.Processing;
public static vid Resize(byte[] imageBytes,int width=400) { using var steam = new MemoryStream(imageBytes); using (var image= Image.Load(stream)) { var ow = image.Width; var oh = image.Height; // 如何制定宽度大于原图, 使用原图宽度 float scale = (ow <= width) ? 1 : (width/ow*1.0f); // 新的宽度和高度 int targetWidth = (int) (ow * scale); int targetHeight = (int)( oh * scale); // 对图像进行调整大小 image.Mutate(x => x.Resize( new ResizeOptions { Size = new Size(targetWidth,targetHeight),Mode = ResizeMode.Max } )); // configure the encoder options var encoder = new SixLabors.ImageSharp.Formats.Png.PngEncoder { CompressionLevel = CompressionLevel.BestCompression }; // compress the thumb and save it as stream var saveStream= new System.Io.MemoryStream(); image.save(saveStream,encoder); // image.Save(thumbPath,encoder); return saveStream; } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)