在使用C#进行图片拼接的时候出现了一个疑问,如下:我有20个256*256像素的图片,每张大小约26K,总计500K左右,格式.jpg,使用public void DrawImage (
Image image,
int x,
int y
)
进行拼接,结果拼接后的图像有3M多,而我本身并没有其他的操作,求解……

解决方案 »

  1.   

    3M多正常,存成jpg,调整下压缩率,会少很多.
      

  2.   

    拼完保存成jpeg格式,不要弄成bmp
      

  3.   


                Bitmap bmp = (Bitmap)Image.FromFile("abc.jpg");
                ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders();
                ImageCodecInfo ici = null;            foreach (ImageCodecInfo codec in codecs)
                {
                    if (codec.MimeType == "image/jpeg")
                        ici = codec;
                } 
               
                EncoderParameters ep = new EncoderParameters();
                ep.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 50);//压缩率为50
                bmp.Save(@"C:\abc.jpg", ici, ep);