标题是什么;基本上,如果您在iOS浏览器(例如iPhone)中显示图像,当图像尺寸超过某个限制时,图像将被下采样并以原始分辨率的一小部分显示(即1/n
个数字原始像素。)
我猜,这是一种避免因图像大小因内存不足而导致浏览器崩溃的方法。
我的问题是,在WebView(或浏览器)开始对每个第n个像素进行采样之前,图像尺寸的上限是多少?
示例:当显示5760×1800图像时,它会在浏览器中下采样为1440×450(比例为1:4)。
答案 0 :(得分:5)
刚刚完成了一些测试,似乎iOS(至少在iPhone 3GS上使用iOS 4.2.1)在图像达到 1024px 限制时对其进行下采样。任何高于此大小的图像都会按每个 n 像素对像素进行采样,其中 n 是产生维度
答案 1 :(得分:3)
出于某种原因,Safari移动设备正在减小尺寸,但是感谢有一种方法可以使用以下方法强制css中的实际大小:
-webkit-background-size: widthpx heightpx;
-webkit-background-size:980px 2574px;
/* (simply put in the exact size of the wrapper image) */
最初在这里找到: http://srihosting.com/blog/web-development/ios-safari-background-image-size-problem/
答案 2 :(得分:3)
根据Apple文档,JPEG和其他文件格式之间存在一些差异。
因此JPEG图像最多可以有2 * 1024 * 1024像素(2' 097' 152)。
如果我更正,这里是找到最大图像尺寸所需的数学:
ratio = √(2 * 1024 * 1024) / √(5760 * 1800)= √2097152 / √10368000 ≈ 1448.154 / 3219.937 ≈ 0.449746
optimal_width = 5760 * ratio ≈ 2590 // it's better to approximate 1 pixel smaller
optimal_height = 1800 * ratio ≈ 809 // else the image is quickly too big since we multiply each dimensions
optimal_size = 2590 * 809 = 2095310 // less than 2097152
限制来源:https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/CreatingContentforSafarioniPhone/CreatingContentforSafarioniPhone.html("了解iOS资源限制"部分)