本帖最后由 u012847695 于 2015-01-23 11:36:25 编辑

解决方案 »

  1.   

    自己动脑,丰衣足食啊。
    public static Bitmap getImg(Bitmap b, int destwidth, int destheight)
            {
                Image imgsource = b;
               
                Bitmap outbmp = new Bitmap(destwidth, destheight);
                Graphics g = Graphics.FromImage(outbmp);
                g.Clear(Color.Transparent);
                // 设置画布的描绘质量         
                g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
                g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
                g.DrawImage(imgsource, new Rectangle(0, 0, destwidth, destheight), 0, 0, imgsource.Width, imgsource.Height, GraphicsUnit.Pixel);
                g.Dispose();
                // 以下代码为保存图片时,设置压缩质量     
                System.Drawing.Imaging.EncoderParameters encoderparams = new System.Drawing.Imaging.EncoderParameters();
                long[] quality = new long[1];
                quality[0] = 100;
                System.Drawing.Imaging.EncoderParameter encoderparam = new System.Drawing.Imaging.EncoderParameter(System.Drawing.Imaging.Encoder.Quality, quality);
                encoderparams.Param[0] = encoderparam;
                imgsource.Dispose();
                return outbmp;

    }