【问题标题】:image size limit on iPad?iPad上的图像大小限制?
【发布时间】:2012-01-05 11:51:05
【问题描述】:

我开发了一个网络应用程序,并注意到我的缩放功能不适用于某些图片,并意识到某些图片的大小已被调整。查看这些示例(在 iPad2 上测试):

http://zoom-test.magent-server.de/bild1.html -> gif 格式的图片以全尺寸显示

http://zoom-test.magent-server.de/bild2.html -> jpg 格式的图片原本大小相同,但在 iPad 上缩小了

我无法确定图片何时缩小。显然,对于 gif,它不会发生,但对于 jpg 也不总是发生。它也不取决于图像大小或分辨率。我测试了比示例中尺寸更小和更大的图像,但我找不到模式。

有什么办法可以防止图片尺寸变小吗?或者至少是一个定义,以便我知道哪些图片会被缩小,哪些不会。

【问题讨论】:

    标签: ios ipad limit web-applications


    【解决方案1】:

    加载图像的限制约为 6.5 MB(例如,如果您的页面上有 20 个)see here

    但在你的情况下,文件大小不是问题,你应该看看the apple docs 上面写着“了解 iOS 资源限制”

    【讨论】:

    • 谢谢,但我还是不明白。我认为任何一点都不能解决我的问题。还是我错过了什么?
    【解决方案2】:

    由于 iOS 上的可用内存,它可以处理的资源数量存在限制:

    对于 RAM 小于 256 MB 的设备,解码的 GIF、PNG 和 TIFF 图像的最大大小为 3 兆像素,而对于 RAM 大于或等于 256 MB 的设备,则为 5 兆像素。 也就是说,对于 RAM 小于 256 MB 的设备,请确保 width * height ≤ 3 * 1024 * 1024。请注意,图像的解码大小远大于编码大小。

    使用二次采样的 JPEG 最大解码图像大小为 32 兆像素。 由于二次采样,JPEG 图像最高可达 32 兆像素,这允许 JPEG 图像解码为像素数十六分之一的大小。对大于 2 兆像素的 JPEG 图像进行二次采样,即解码为缩小的尺寸。 JPEG 二次采样允许用户查看来自最新数码相机的图像。

    对于 RAM 小于 256 MB 的设备,画布元素的最大大小为 3 兆像素,而对于 RAM 大于或等于 256 MB 的设备,画布元素的最大大小为 5 兆像素。 如果未指定,画布对象的高度和宽度为 150 x 300 像素。

    每个顶级入口点的 JavaScript 执行时间限制为 10 秒。 如果您的脚本执行时间超过 10 秒,iOS 上的 Safari 会在您代码中的随机位置停止执行该脚本,因此可能会导致意想不到的后果。

    这个限制是因为 JavaScript 执行可能会导致主线程阻塞,所以当脚本运行时,用户无法与网页交互。

    有关如何在 iOS 上调试 JavaScript,请参阅 Safari Web Inspector Guide。

    在 iPhone 上一次可以打开的最大文档数是 8 个,在 iPad 上是 9 个。

    【讨论】:

    • 巨大的 5760x3600 像素 (20megapx) png 背景不仅会出现在 ipad 中,还会出现在“古老的”iPhone 4s 模拟器中。我认为这些限制不再准确。
    猜你喜欢
    • 2012-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-07
    • 2013-04-05
    • 2014-06-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多