2010-10-11 138 views
2

我有一個JPEG格式圖像,白色背景和黑色圓圈。如何將JPEG圖像轉換爲透明背景的PNG圖像?

如何將此圖像轉換爲PNG格式,白色背景是透明的而黑色仍然存在?

我也是程序員,如果在C#代碼中有一些想法,我會很高興。此外,我正在尋找一款轉換器,工具,編程任何東西。

謝謝。

傑夫

+0

任何合理的圖像編輯器(例如Paint.NET)都可以做到這一點。你真的需要代碼嗎? – 2010-10-11 12:49:46

+0

我實際上並不需要代碼,我只想讓背景透明,如何以及使用什麼工具並不重要。 – 2010-10-11 12:51:21

回答

8

這是工作,但緩慢的解決方案。你可以通過使用Bitmap.LockBits()來加速它。

using (Image img = Image.FromFile(filename)) 
using (Bitmap bmp = new Bitmap(img)) 
{ 
    for (int x = 0; x < img.Width; x++) 
    { 
     for (int y = 0; y < img.Height; y++) 
     { 
      Color c = bmp.GetPixel(x, y); 
      if (c.R == 255 && c.G == 255 && c.B == 255) 
       bmp.SetPixel(x, y, Color.FromArgb(0)); 
     } 
    } 
    bmp.Save("out.png", ImageFormat.Png); 
} 
+0

嗯,我應該輸入什麼來使用'圖像','位圖'和'顏色'? – 2010-10-11 13:04:16

+0

你需要引用System.Drawing.dll – ironic 2010-10-11 13:07:05

+0

是的,這是我的這樣一個完整的問題... – 2010-10-11 13:10:59