【发布时间】:2013-09-23 09:18:27
【问题描述】:
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);
我尝试了这段代码,但没有给出正确的结果?
谁能帮帮我。
【问题讨论】:
-
您只能将
FirstOrDefault与谓词一起使用,而不是链接Where和FirstOrDefault。此外,您可能希望只有一个编解码器与提供的 GUID 匹配,所以您真的想要SingleOrDefault。
标签: c# asp.net bit color-depth