众所周知ImageMagick是MagickNet著名的图片处理工具
处理图片只需几行代码
在包控制管理工具中安装Magick.NET-Q16-AnyCPU
using ImageMagick;
//fullPath为图片路径
using (MagickImage Magickimage = new MagickImage(fullPath))
{
int maxWidth = 1300; // 设置目标图片的最大宽度为1300像素
Magickimage.Quality = 100;//进行无损压缩
// 计算新的尺寸,保持宽高比
int width = Magickimage.Width;
int height = Magickimage.Height;
int newWidth = width;
int newHeight = height;
// 如果原始宽度大于最大宽度,则计算新的宽度和高度
if (width > maxWidth)
{
// 保持宽高比,计算新的宽度和高度
double aspectRatio = (double)height / (double)width;
newWidth = maxWidth;
newHeight = (int)(maxWidth * aspectRatio);
}
// 缩放图片
Magickimage.Resize(newWidth, newHeight);
Magickimage.Write(fullPath);
}
效果