我有一個項目,需要將內存中的System.Drawing.Bitmap轉換爲內存中的BitmapImage,這樣我就可以通過XAML將BitmapImage綁定到Image控件。我遇到的問題是在轉換過程中原始位圖縮小並且非常模糊。WPF圖像格式和綁定
這是非常糟糕的,因爲原始位圖是一個條形碼,我需要這個條形碼來保持可讀性。有什麼我可以做,以保持我的位圖的完整性?或者是否有可能將一個System.Drawing.Bitmap綁定到一個WPF Image控件,而無需先保存該位圖並使用一個URI?
也有人可以向我解釋所有這些圖像格式之間的區別?它們看起來好像有很多,它們駐留在衆多的命名空間中,並且在它們之間轉換是一種痛苦。
編輯.....
public static BitmapImage GetBitmapImage(Bitmap bmp)
{
MemoryStream ms = new MemoryStream();
bmp.Save(ms, ImageFormat.Bmp);
BitmapImage bmpI = new BitmapImage();
bmpI.BeginInit();
bmpI.StreamSource = ms;
bmpI.EndInit();
ms.Close();
ms.Dispose();
return bmpI;
}
你可以發佈你用來收斂它的代碼嗎?你使用ValueConverter來做到這一點嗎? – Nate 2010-07-16 21:24:01
更新了轉換方法。 – user337816 2010-07-16 21:28:05