1

我在市场上有很多应用程序,到目前为止,我已经能够通过更改我的功能或加倍努力来解决无法将背景中的 jpg 解码为 WriteableBitmap 的问题。

我发现一种情况,我想不出“解决”这个问题的好方法。我需要解码从 MediaLibrary 获得的图像,将其分辨率降低到可管理的值 (800x800),旋转它并保存到本地存储。到目前为止,花费最多时间 (80%) 的事情是将位图解码为 800x800 - 它需要 700 毫秒到 1000 毫秒。用户在开始时可能会添加 7-10 张图像,这意味着等待添加图像的时间约为 10 秒。

我尝试懒惰地这样做,但在某些时候你需要付钱给吹笛者,并且应用程序在那时基本上会卡顿约 1000 毫秒,而且体验不是很好。

以某种方式在后台加载图像是否有我缺少的替代方法?

(请注意为什么 CreateOptions.BackgroundCreation 对我没有好处:它将图像加载到 BitmapImage 中,如果您只想使用它,这很好,但对于我需要做的就是在独立存储中创建副本来说不是很好) .

4

1 回答 1

0

不幸的是,构造函数中的某些东西BitmapImage需要在 UI 线程上运行。:(

我还没有找到解决方法,但也没有看到像你所说的那样解码需要任何时间。

于 2012-03-28T15:46:30.310 回答