1

我想存储在用户使用该应用程序时拍摄的一堆图像,同时确保我以后可以以相当高的分辨率查看它们。通过“存储”,现在我不需要在应用程序关闭后存储它们。我只需要在应用程序还活着的时候让它们可用。

我首先尝试简单地将 UIImages 以其原始大小存储在应用程序上,但由于内存使用,应用程序会在拍摄 7 或 8 张照片后崩溃。

然后我尝试缩小它们(因为我的应用程序有一个网格显示,我可以在其中看到所有图片,但缩小到适合 3x3 图像网格),我的应用程序停止崩溃。但是当我想在全屏上单独查看图片时,质量很差,因为我放大了一张缩小的照片。

所以我想为什么不找到一种方法来通过另一个对象以不会占用太多内存的方式存储原始图像。在线搜索导致我决定将它们存储在一个文件中,方法是将图像转换为 NSData,然后将其写入文件。但是,当我将 NSData 加载回 UIImage 时,我通过相机拍摄的照片的方向都是横向的!经过数小时的研究(和失败)如何将其转换回正确的方向后,我决定放弃尝试修复这个方向错误。

相反,我只想知道除了使用 NSData 之外,是否还有其他方法可以存储大/高分辨率 UIImage(不占用内存)。你们有什么想法?

请原谅我不得不为一个单行问题写这么多。我只是不想得到关于做我已经尝试过的事情的建议。

4

1 回答 1

1

将其保存为 jpeg 而不是 PNG,这样图像将为您旋转。见https://stackoverflow.com/a/4868914/96683

于 2013-11-09T00:18:27.253 回答