如何以较少的内存使用量和良好的性能将BMP图像文件加载到Image控件的ImageSource中

时间:2018-07-09 11:11:24

标签: c# .net wpf bitmapimage imagesource

我们想在我们的应用程序中加载BMP图像。 请提出如何以较少的内存使用和良好的性能将BMP图像文件加载到Image控件的ImageSource中的方法?

我们使用下面的代码,我们能够加载图像,但是加载更多内存(即使使用DecodePixelHeight / Width)也需要花费大量时间

var image = new BitmapImage();
image.BeginInit();
image.CacheOption = BitmapCacheOption.OnLoad;
image.CreateOptions = BitmapCreateOptions.IgnoreImageCache;
image.UriSource = new Uri(FullName);     //FullName is image name with path
image.DecodePixelHeight = 150;
image.EndInit();
image.Freeze();
ImageSource = image;

我们需要加载一个大小为1GB的bmp文件的文件夹(每个文件大小为5-10 MB)。截至目前,初始加载需要6分钟。但其他图片,例如1GB数据的JPG和PNG文件,则在30秒内加载

0 个答案:

没有答案