/// <summary> /// 保存高质量的缩略位图 /// </summary> /// <param name="source">源图</param> /// <param name="width">缩略位图高</param> /// <param name="height">缩略位图宽</param> /// <example> /// SourceImg.SaveThumbnailBitmap(8, 8, "C:/", "a", "jpg"); /// </example> public static void SaveThumbnailBitmap(this Image source, int width, int height, string directory, string filename, string extension) { var physicalPath = directory + filename + "." + extension; using (var newImage = source.GetThumbnailBitmap(width, height)) { using (var encoderParameters = new EncoderParameters(1)) { encoderParameters.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 100L); newImage.Save(physicalPath, ImageCodecInfo.GetImageEncoders() .Where(x => x.FilenameExtension.Contains(extension.ToUpperInvariant())) .FirstOrDefault(), encoderParameters); } } }