Asp.Net/IIS上实现调整大小/保存图像的System.Drawing的替代方案。
创始人
2024-09-17 03:00:21
0

在Asp.Net/IIS上,System.Drawing被证明是处理图像的很好的方式,但是它有一些问题,例如内存限制和效率问题。因此,以下是两种替代方法来解决这些问题。

  1. 使用第三方库或API:

有很多第三方库或API可以用于处理图像。其中一些可以在上传图像时自动调整大小,因此您不必担心一个巨大的图像会导致内存问题。另外,这些库和API通常比System.Drawing更有效率。以下是一些可选的库/ API:

  • ImageMagick
  • FreeImage
  • DynamicImage
  • Cloudinary

例如,使用Cloudinary API可以轻松实现上传和调整大小图像的以下代码:

Cloudinary cloudinary = new Cloudinary(account); var uploadResult = cloudinary.Upload(new ImageUploadParams() { File = new FileDescription("myfile.jpg"), Transformation = new Transformation().Width(250).Height(250).Crop("fill") });

  1. 使用缩放处理:

如果您不想依赖第三方库或API,则可以使用.NET中内置的缩放处理来调整大小图像。这种方法将原始图像加载到内存的一小部分中,然后只对该部分进行操作,这样可以避免内存问题。这种方法要比加载整个图像或使用System.Drawing更有效率。以下是实现这种方法的代码:

public static Bitmap ResizeImage(Image image, int width, int height) { var destRect = new Rectangle(0, 0, width, height); var destImage = new Bitmap(width, height);

destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution);

using (var graphics = Graphics.FromImage(destImage))
{
    graphics.CompositingMode = CompositingMode.SourceCopy;
    graphics.CompositingQuality = CompositingQuality.HighQuality;
    graphics.InterpolationMode = Inter

相关内容

热门资讯

教你透视!如何判断wpk辅助软... 教你透视!如何判断wpk辅助软件的真假,wpk模拟器是什么,本来一直都是有辅助工具(哔哩哔哩)1、首...
关于透视!wepoker好友房... 关于透视!wepoker好友房开挂,wepoker辅助插件功能,其实是真的有辅助技巧(哔哩哔哩)透视...
开挂透视!wpk模拟器,wpk... 开挂透视!wpk模拟器,wpk模拟器,都是存在有辅助app(哔哩哔哩)1、实时透视辅助更新:用户可以...
专业透视!如何下载德普之星辅助... 专业透视!如何下载德普之星辅助软件,德普之星app安卓版破解版,原来存在有辅助工具(哔哩哔哩)1、游...
必备透视!wpk透视插件,wp... 必备透视!wpk透视插件,wpk软件是正规的吗,真是一直都是有辅助插件(哔哩哔哩)1、免费辅助多个强...
教你透视!wpk控制牌是真的吗... 教你透视!wpk控制牌是真的吗,wpk透视是真的吗,确实是有辅助软件(哔哩哔哩);1、游戏颠覆性的策...
揭露透视!wepoker私人局... 揭露透视!wepoker私人局开挂视频,wepoker私局代打,一贯真的有辅助方法(哔哩哔哩)1、脚...
科普透视!wpk有那种辅助吗,... 科普透视!wpk有那种辅助吗,wpk透视是真的假的,确实是真的有辅助攻略(哔哩哔哩)1、透视辅助软件...
有挂透视!德普之星透视辅助软件... 有挂透视!德普之星透视辅助软件,德普软件,都是一直都是有辅助app(哔哩哔哩)1、每一步都需要思考,...
科普透视!wpk俱乐部有没有辅... 科普透视!wpk俱乐部有没有辅助,如何判断wpk辅助软件的真假,本来是真的有辅助攻略(哔哩哔哩)1、...