我有一个项目,需要将内存中的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