iPhone/iPad处理大量图像

iPhone/iPad处理大量图像,iphone,image,ipad,Iphone,Image,Ipad,我有两款已经上市的iOS应用程序,在iPhone上使用了3年,在iPad高清版上使用了2年。这些应用程序是医学领域一个流行的参考工具。它们都由1100多幅图像组成。当前的应用程序大小约为52mb 将重做大约400个图像。它们目前是jpg和低分辨率。替代品将是png,分辨率更高 我不确定这些图像的像素大小。如果在280x280范围内,每个文件大约为100k,如果在560x560范围内,每个文件几乎为400k 因此,对于较小的图像,我需要额外的40mb,对于较大的图像,我需要额外的160mb 计划在

我有两款已经上市的iOS应用程序,在iPhone上使用了3年,在iPad高清版上使用了2年。这些应用程序是医学领域一个流行的参考工具。它们都由1100多幅图像组成。当前的应用程序大小约为52mb

将重做大约400个图像。它们目前是jpg和低分辨率。替代品将是png,分辨率更高

我不确定这些图像的像素大小。如果在280x280范围内,每个文件大约为100k,如果在560x560范围内,每个文件几乎为400k

因此,对于较小的图像,我需要额外的40mb,对于较大的图像,我需要额外的160mb

计划在不久的将来再拍摄400多张图片。所以,我有点担心最终的应用程序大小

如果我使用较大尺寸的视网膜设备,我可以缩小非视网膜设备的尺寸吗? 如果我同时提供两种尺寸,image.png和image@2x.png,就这些图像而言,这将是200mb

我有点不确定如何管理它们的个体大小,更重要的是,它们的总大小

欢迎提出任何意见或建议,并将对您有所帮助

蒂亚


jb

以下是您的一些选择:

1。缩小视网膜图像的尺寸

我不建议缩小非视网膜设备的视网膜图像。这会产生非最佳性能,并使图像看起来很糟糕。您仍在加载视网膜图像的所有像素,但仅显示其中的1/4

2。捆绑所有图像

老实说,对于医学参考应用程序,我认为如果你的应用程序大小相当大,这是可以理解的。我不认为人们需要通过3G或LTE下载这个应用程序。您的用户了解这是一个提供高分辨率图像的大型数据库应用程序,因此他们应该可以通过这种方法使用大型应用程序

3。在Web服务上托管图像

另一种选择是将图像托管在服务器上,允许根据需要单独下载或捆绑下载。我认为你的用户更愿意在没有互联网连接的情况下完全使用应用程序,而不是使用更小的应用程序

4。可选图像加载

这种方法需要一些工作,而且可能有点风险。你只能将2个版本的图像捆绑到应用程序中。然后在应用程序启动时,您可以强制用户等待,直到您将所有图像调整为1x对应图像并将其保存到磁盘。然后,您可以创建一个图像加载便利方法,根据UIImage是否需要视网膜图像,从磁盘或应用程序包加载UIImage



出于您的目的,我绝对推荐选项2。我只提到了其他要彻底解决的问题。

以下是您的一些选择:

1。缩小视网膜图像的尺寸

我不建议缩小非视网膜设备的视网膜图像。这会产生非最佳性能,并使图像看起来很糟糕。您仍在加载视网膜图像的所有像素,但仅显示其中的1/4

2。捆绑所有图像

老实说,对于医学参考应用程序,我认为如果你的应用程序大小相当大,这是可以理解的。我不认为人们需要通过3G或LTE下载这个应用程序。您的用户了解这是一个提供高分辨率图像的大型数据库应用程序,因此他们应该可以通过这种方法使用大型应用程序

3。在Web服务上托管图像

另一种选择是将图像托管在服务器上,允许根据需要单独下载或捆绑下载。我认为你的用户更愿意在没有互联网连接的情况下完全使用应用程序,而不是使用更小的应用程序

4。可选图像加载

这种方法需要一些工作,而且可能有点风险。你只能将2个版本的图像捆绑到应用程序中。然后在应用程序启动时,您可以强制用户等待,直到您将所有图像调整为1x对应图像并将其保存到磁盘。然后,您可以创建一个图像加载便利方法,根据UIImage是否需要视网膜图像,从磁盘或应用程序包加载UIImage



出于您的目的,我绝对推荐选项2。我只提到了其他要彻底检查的地方。

谢谢你的意见。我同意,选项2听起来是最好的。谢谢你的意见。我同意,选择2听起来是最好的。