hmfl

导航

 

EncoderParameter p;
EncoderParameters ps;

ps = new EncoderParameters(1);
p = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 100);
ps.Param[0] = p;
ImageCodecInfo myImageCodecInfo = GetCodecInfo("image/jpeg");
zipbmp.Save("d:\\111.jpg", myImageCodecInfo, ps);

在处理到图片压缩保存时,测试是图片质量参数随便输入了100这么个数字,结果在参数初始化的时候就被识别成了byte类型,而造成.Save参数无效的错误(正确的应该要是long类型参数),而必须用下面的方式定义一个int类型,再调用才正常。

int Qty = 100;
p = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, Qty);

感觉有点坑,或许单输入一个“100”,C#没那么想当然就识别成整数

 

posted on 2017-06-27 09:39  hmflhmfl  阅读(4008)  评论(0编辑  收藏  举报