Here is an even more compact piece of code for saving in JPEG format with a certain quality:
var encoder = ImageCodecInfo.GetImageEncoders().First(c => c.FormatID == ImageFormat.Jpeg.Guid); var encParams = new EncoderParameters() { Param = new[] { new EncoderParameter(Encoder.Quality, 90L) } }; image.Save(path, encoder, encParams);
Or if the lines with a width of 120 characters are too long for you:
var encoder = ImageCodecInfo.GetImageEncoders() .First(c => c.FormatID == ImageFormat.Jpeg.Guid); var encParams = new EncoderParameters(1); encParams.Param[0] = new EncoderParameter(Encoder.Quality, 90L); image.Save(path, encoder, encParams);
Make sure the quality is long or you will get an ArgumentException !
Roman Starkov Mar 23 '15 at 13:51 on 2015-03-23 ββ13:51
source share