c#图片压缩的方法是什么

avatar
作者
猴君
阅读量:0

在C#中,可以使用System.Drawing命名空间中的Bitmap类来实现图片压缩。以下是一个简单的示例代码,演示如何使用Bitmap类来压缩图片:

using System; using System.Drawing; using System.Drawing.Imaging; using System.IO;  public static void CompressImage(string sourceImagePath, string outputImagePath, long quality) {     using (Bitmap sourceImage = new Bitmap(sourceImagePath))     {         ImageCodecInfo jpgEncoder = GetEncoder(ImageFormat.Jpeg);         EncoderParameters encoderParameters = new EncoderParameters(1);         encoderParameters.Param[0] = new EncoderParameter(Encoder.Quality, quality);          sourceImage.Save(outputImagePath, jpgEncoder, encoderParameters);     } }  private static ImageCodecInfo GetEncoder(ImageFormat format) {     ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders();      foreach (var codec in codecs)     {         if (codec.FormatID == format.Guid)         {             return codec;         }     }      return null; } 

在上面的示例中,CompressImage方法接受三个参数:原始图片的路径sourceImagePath、压缩后图片的保存路径outputImagePath以及压缩质量quality。在方法内部,首先使用Bitmap类加载原始图片,然后设置压缩编码器和参数,并最终保存压缩后的图片到指定路径。

需要注意的是,quality参数的取值范围通常是0到100之间,值越大表示图片质量越好。可以根据实际需求调整quality的数值以达到合适的压缩效果。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!