Reputation: 4742
MemoryStream msSave = new MemoryStream();
ImageCodecInfo pngCodec = ImageCodecInfo
.GetImageEncoders()
.Where(codec => codec.FormatID.Equals(ImageFormat.Png.Guid))
.FirstOrDefault();
if (pngCodec != null)
{
EncoderParameters parameters = new EncoderParameters();
parameters.Param[0] = new EncoderParameter(Encoder.ColorDepth, 256);
img.Save(msSave, pngCodec, parameters);
}
img.Save(msSave, imageFormat);
I tried out this code but not giving me the correct result?
Could any one help me out.
Upvotes: 1
Views: 1583
Reputation: 31
MemoryStream msSave = new MemoryStream();
ImageCodecInfo pngCodec = ImageCodecInfo
.GetImageEncoders()
.Where(codec => codec.FormatID.Equals(ImageFormat.Png.Guid))
.FirstOrDefault();
if (pngCodec != null)
{
EncoderParameters parameters = new EncoderParameters();
parameters.Param[0] = new EncoderParameter(Encoder.ColorDepth, 256L);
img.Save(msSave, pngCodec, parameters);
}
img.Save(msSave, imageFormat);
Does this work?
Upvotes: 0
Reputation: 13984
Try this:
//parameters.Param[0] = new EncoderParameter(Encoder.ColorDepth, 256);
parameters.Param[0] = new EncoderParameter(Encoder.ColorDepth, 8);
Upvotes: 1