【发布时间】:2011-05-03 22:50:09
【问题描述】:
据我所知,WPF 图像的源是 BitmapSource 对象,而资源图像被读取为位图。我很容易找到一种将图像从 Bitmap 格式转换为 BitmapSource 格式的方法,但我相信每次我需要图像时运行这种转换在性能和内存消耗方面都是昂贵的(位图本身是静态的,但我猜转换会在内存中为 BitmapSource 分配一个新对象)。
我曾考虑为 BitmapSource 对象保留一个内存中的惰性缓存,这样我只需要为每个图像运行一次转换。但是,我很难相信这是解决此问题的正确方法。
应用程序的本质是数据随着时间的推移而扩展,而业务对象永远不会被释放。因此,只有在实现为这些静态图像保存静态资源的情况下,这个假设才会成立。
我将非常感谢适当的解决此问题的方法。
【问题讨论】:
标签: wpf performance resources bitmap bitmapsource