抠图的问题
各位,我用的c#,我想把一张图片除了背景色给抠出来。运行这段代码后,cpu和内存飙升,这样肯定不行。等了半天,还发生一般gdi+错误。无语。麻烦知道的帮我解惑。现将代码贴出。就几句,^_^。   
  private void Form1_Paint(object sender, PaintEventArgs e)   
         {   
             Bitmap map = (Bitmap)Image.FromFile("temp.jpg");   
             Graphics gra = e.Graphics;                   
             Color blackcr,cr;   
             blackcr = map.GetPixel(0, 0);                  
             Region rgn,rgntemp,rgnlast;   
             rgn = new Region(new Rectangle(0, 0, map.Width, map.Height));   
             rgnlast = new Region(new Rectangle(0, 0, 1, 1));   
             Rectangle rec = new Rectangle(0, 0, 1, 1);   
             rgntemp = new Region(new Rectangle(0, 0, 1, 1));   
             for (int m = 0; m < map.Height; m++)   
             {   
                 for (int n = 0; n < map.Width; n++)   
                 {   
                     if (map.GetPixel(n, m) != blackcr)   
                     {   
                         rec.X = n;   
                         rec.Y = m;   
                         rgnlast.Complement(rec);   
                         break;   
                     }   
                 }   
                 break;   
             }   
             for (int i = 0; i < map.Height ; i++)   
                 for (int j = 0; j < map.Width ; j++)   
                 {   
                     if (map.GetPixel(j, i) != blackcr)   
                     {   
                         rec.X = j;   
                         rec.Y = i;   
                         rgntemp.Complement(rec);   
                         rgnlast.Union(rgntemp);   
                     }   
                 }   
             gra.FillRegion(new SolidBrush(Color.White), rgnlast);   
             gra.Dispose();   
}   
那个temp.jpg随便找个图片代替下。
------解决方案--------------------
先根据你的图 获取图形的颜色
LockBits() 颜色
Marshal.Copy()到BYTE
根据颜色 进行盘大
然后复制到新的图形....