if (pictureBox1.Image == null) return;
                Bitmap srcmap = null, destbit =null;
                Graphics g = null;
                try
                {
                    //例如:图片目标大小为:320*240
                    GC.Collect();GC.WaitForPendingFinalizers();
                    srcmap = new Bitmap(pictureBox1.Image);
                    //Bitmap srcmap = new Bitmap(strImageFile);
                    //图片文件=strImageFile,直接NEW出某图片文件时,如图片太太会出现OutOfMemory的异常哦,不知如何解决@@
                    destbit = new Bitmap(320, 240);
                    Rectangle srcRec = new Rectangle(0, 0, srcmap.Width, srcmap.Width);
                    Rectangle destRec = new Rectangle(0, 0,  320,240);
                    g = Graphics.FromImage(destbit);
                    g.DrawImage(srcmap, destRec, srcRec, GraphicsUnit.Pixel);
                    destbit.Save(fileName, System.Drawing.Imaging.ImageFormat.Jpeg);//保存较大Jpeg,如1280*1024图片时,比较消耗内在哦。
                    if (g != null) { g.Dispose(); g = null; }
                    if (destbit != null) { destbit.Dispose(); destbit = null; }
                    if (srcmap != null) { srcmap.Dispose(); srcmap = null; }
                    GC.Collect();GC.WaitForPendingFinalizers();
                }
                catch (Exception ex)
                {
                    if (g != null) { g.Dispose(); g = null; }
                    if (destbit != null) { destbit.Dispose(); destbit = null; }
                    if (srcmap != null) { srcmap.Dispose(); srcmap = null; }
                    GC.Collect();GC.WaitForPendingFinalizers();                    
                    MessageBox.Show(ex.Message);
                }
//如果大家有更好的方法,请多多指教,TKS!
 
                     
                    
                 
                    
                 
         
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号