我不太了解window.devicePixelRatio
的值是什么,以及它如何决定该设备所需的大小图像(2x,3x等)。
例如,在iMac 5K Retina(2015年末),我预计像素比率至少为3左右,但它实际上是2,与iPad Air和iPhone 6s相同。这是否意味着它更喜欢2x位图? 3×?
答案 0 :(得分:5)
devicePixelRatio
是给定设备上物理像素与设备无关像素(dips)之间的比率。您可以将蘸料视为显示器“行为”的样子。
例如:非视网膜27“iMac的宽度为2560像素。一切都以1:1显示,因此它也是2560 dips宽,因此devicePixelRatio
为1
。< / p>
在您的视网膜27“iMac上,宽度为5120像素。但显示器”的作用“只有2560像素宽,因此所有内容都显示为与非视网膜iMac相同的物理尺寸。因此,它是仍然是2560 dips宽,所以devicePixelRatio
是2
(5120/2560),你可以提供2x图像。
(您可以查看系统的逢低值 - 如果您有视网膜显示器 - 转到系统偏好设置&gt;显示&gt;显示并将分辨率切换切换为缩放,然后将鼠标悬停在不同的选项上。对于默认值,在5K iMac上,它会说“看起来像2560 x 1440”。)
答案 1 :(得分:1)
到目前为止,用于Retina显示器的图形的标准做法仍然是提供两倍于通常的非Retina尺寸的图像。
提醒:只为当前用户的设备大小和分辨率所需的图像提供良好的“带宽卫生”。对此的解决方案超出了本问题的范围。