由于有一百万张图像,iOS 通用应用程序中的大尺寸

Posted

技术标签:

【中文标题】由于有一百万张图像,iOS 通用应用程序中的大尺寸【英文标题】:Large sizes in iOS Universal apps due to a million images 【发布时间】:2013-11-11 22:23:50 【问题描述】:

好的,我有一个通用应用程序,这意味着它必须具有 iPhone 非视网膜启动图像、视网膜图像和 iPhone 5+ 尺寸的视网膜图像。它还必须有针对纵向和横向的非视网膜 iPad 发布,针对纵向和横向的视网膜,然后是替代版本以及尺寸略有变化的版本。例如,在 iPad 上,我必须有 768 x 1024 和 768 x 1004。仅 iPad 启动图像需要 8 张图像,我的应用程序的文件大小很大,因为每个 iPad 启动图像在 1.5MB 和 5MB 之间.关于如何减小尺寸的任何建议,因为它只是由于大型启动图像而变高?

这就是我所说的 iPad 所需的所有图像的意思。 8张图片???

【问题讨论】:

问题中的百万图像是关于什么的?此外,通用 iPad iPhone 应用程序的图像要求与您已经知道的相同。没有其他办法了。除非您使用一张图像并手动调整其大小。尽管我从来没有必要这样做,但也许已经完成了。 XCodeMonkey 在我的编辑中查看图片 我理解你的困境。相信我,我在其中。我还没有在任何地方看到工作,也没有从苹果那里得到满意的答复。我和你一样讨厌它,但现在似乎没有办法了。 【参考方案1】:

你可以做的是提供 jpeg 图像而不是 png 来大大减小尺寸。是的,我知道,Apple 要求提供 png,但您可以提交带有 jpg 图像的应用程序(我为我的 iPad 应用程序这样做)。

使用预览打开图像。将它们保存为质量非常低的 JPEG - 或尝试质量设置。您会惊讶于真正压缩的 JPG 图像看起来多么漂亮。

哦,由于 Apple 在启动期间将 jpg 转换为 png,您的启动时间可能会增加几毫秒。

我的经验是在 ios5 出来时提交,所以不使用 PNG 可能会成为 iOS7 的障碍。但是,如果需要,我什至有一个解决方案。按照我的建议做 - 首先将图像保存为高度压缩的 jpg 图像。然后将这些图像转换为 png - 首先完成的 jpg 压缩应该使 png 更容易压缩这些图像,从而减小大小。

有几个 PNG “破碎机” - 减少 PNG 大小的程序 - 效果很好。只需确保取消选择让 Xcode “减小 PNG 大小”的选项 - 因为它实际上会增加它们的大小!

【讨论】:

添加 JPEG 格式的图像或 jpg 将导致您的应用程序被拒绝,就启动图像而言。只是说。 @XCodeMonkey,你知道这是事实吗?我确实知道当 iOS5 是最新版本时我可以做到这一点。只是想知道您的应用被拒绝了。它很容易测试 - 下次试试,如果你做得很好,如果没有,那就试试建议 2,这是为了让你的图像减少变化,以便用 PNG 压缩(无损)很好地压缩。 因为我在 iOS 6 上尝试了两次,但我的应用程序被拒绝,然后我将其更改为 png 并通过了,是的,我知道这是事实。但我会保证下周上传时会在我的新 iOS 7 应用程序中尝试它,并且由于我尊重你作为一个经验丰富且声誉很高的编码器,我会为你发布结果。毕竟你可能是对的,我的朋友,而我现在和永远都是一个好学生。 @XCodeMonkey,哈哈,请注意我使用了相当老的经验 - iOS5。我只将启动图像设置为 jpg,因为众所周知,png 通常要大得多。但是,如果您可以降低图像的复杂性 - png 可以更好地压缩它们。 PNG 是无损的 - 它不会从最终图像中删除一位。也就是说,这个想法是为它提供一个几乎没有变化的图像 - 这样它就可以更好地压缩它。我知道的最简单的方法是从高度压缩的 jpg 图像开始!所以拜托,我并不怀疑你被拒绝了!

以上是关于由于有一百万张图像,iOS 通用应用程序中的大尺寸的主要内容,如果未能解决你的问题,请参考以下文章

如何在一秒钟内对数百万张人脸进行人脸识别

java题:一百万个乱序数字排序,中间有重复的,但由于内存不够,不能一下存储100万个数,怎样才排序?

S3 中每个目录的最大文件数

每个月有固定收入的程序员,银行里有一百万元的存款,生活水准如何?

永久存储具有512个浮点数和100万条记录的数组以便快速搜索的最佳方法是什么?

iOS应用程序的背景图像的正确尺寸是多少