我正在创建一个Windows Phone 8.1(RT)应用程序,我在LocalStorage和图片库中都有一些图像,我正在使用GetThumbnailAsync()加载图像。 对于大小为6MB +的PNG图像,PicturesLibrary中的GetThumbnailAsync()需要几毫秒,而在应用程序中复制到LocalStorage时相同的图像大约需要10秒才能获得缩略图。
我也用过
getThumbnailAsync(ThumbnailMode.ListView,100,ThumbnailOptions.ResizeThumbnail)
然而,它需要很长时间,但会以所需的像素大小返回缩略图。任何人都可以指出为什么在LocalStorage的情况下花费这么多时间,以及是否有任何替代方案可以让它快速。
答案 0 :(得分:3)
系统为图片库中的图像预先缓存缩略图,而对于应用程序的独立存储中的图像则不能这样做。
这里有两种解决方法:
将图片移至系统可预先生成缩略图的公共位置
在本地存储中的图像的EXIF数据中嵌入缩略图。然后系统可以快速提取并更快地返回缩略图。目前它必须解码整个6+ MB文件以生成缩略图,其中快速提取只需要弹出更小的缩略图