这是关于系统(特别是网络浏览器)如何处理压缩图像的架构/概念问题。
我们正在处理一个工作中的“图片库”网络应用程序,该应用程序在一个页面上有 11 个 1920x1080 的图像,您可以在 iPad 上滑动浏览。我们发现它非常慢,我几乎可以肯定这是因为 iPad 无法同时在内存和页面上拥有如此多的大图像。
有些人建议我们更多地压缩图像;他们目前是 PNG,他们想将它们重新压缩为 JPG。显然文件大小会更小,但除非 iPad(和其他人)有办法直接将压缩图像渲染到屏幕(帧缓冲区),否则我认为他们必须在渲染之前将图像解压缩到内存中. 在这种情况下,压缩似乎不会影响渲染它们的性能。(除了“更多”解压缩它们的轻微增加处理能力。)
我的理解和假设是否正确?我们应该调整大小还是重新压缩图像?
谢谢
更多信息 - 在你告诉我“是的压缩图像更小”之前阅读此内容 - 我是开发人员,而不是用户:
使用更少的空间与使用更少的内存不同。我们没有存储问题,我们遇到了渲染性能问题。代码很简单,只是在一个 div 和下一个 div 之间进行动画处理,为画廊提供“滑动”效果。
当我们从方程中删除图像时,性能很好;所以我相当确定瓶颈是图像,而不是代码。
被问到的问题是“压缩是否会使图像使用更少的内存”,因为其他人希望更多地压缩图像以获得性能。据我了解压缩的架构,您仍然必须将其解压缩到内存中的原始大小才能使用它,因此压缩不会影响内存使用;只有存储和传输。