优化System.Windows.Drawing.Bitmap和System.Windows.Media.Imaging.BitmapImage之间的转换

时间:2011-05-25 20:37:12

标签: c# wpf system.drawing

我正在开发一个项目,该项目使用以下函数在System.Drawing.Bitmap图像之间进行转换,这些图像是使用System.Drawing.Printing API和System.Windows.Media.Imaging.BitmapImage类所必需的。 ,用于在WPF中显示图像:

    public System.Windows.Media.Imaging.BitmapImage getDisplayImage(System.Drawing.Bitmap bm)
    {
        MemoryStream ms = new MemoryStream();
        bm.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
        System.Windows.Media.Imaging.BitmapImage wpfImg = new System.Windows.Media.Imaging.BitmapImage();
        ms.Seek(0, SeekOrigin.Begin);
        wpfImg.BeginInit();
        wpfImg.StreamSource = ms;
        wpfImg.EndInit();
        return wpfImg;
    }

它当然适用于任务,但对于我使用它的数据(对于尺寸大约为5400乘3600的图像)来说,它的速度很慢。有没有更有效的方法来转换这些格式?

0 个答案:

没有答案