using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace TeamAAS_VP.Core
{
public class ImageHelper
{
///
/// 压缩并保存图片
///
///
/// 目标图像存储路径JPEG
/// 压缩等级,0到100,0 最差质量,100 最佳
public static void CompressImage(Bitmap bitmap, string path, long quality = 100)
{
ImageCodecInfo codecInfo = GetEncoderInfo("image/jpeg");
System.Drawing.Imaging.Encoder encoder = System.Drawing.Imaging.Encoder.Quality;
EncoderParameters parameters = new EncoderParameters(1);
EncoderParameter parameter = new EncoderParameter(encoder, quality);
parameters.Param[0] = parameter;
bitmap.Save(path, codecInfo, parameters);
bitmap.Dispose();
parameter.Dispose();
parameters.Dispose();
}
private static ImageCodecInfo GetEncoderInfo(String mimeType)
{
int j;
ImageCodecInfo[] encoders;
encoders = ImageCodecInfo.GetImageEncoders();
for (j = 0; j < encoders.Length; ++j)
{
if (encoders[j].MimeType == mimeType)
return encoders[j];
}
return null;
}
}
}