概述
devicePixelRatio 在全局变量 window 中,指的是设备上物理像素和设备独立像素(device independent pixels,简称 dips)的比例。
devicePixelRatio = 物理像素 / dips ;
设备独立像素 dips
独立于设备的用于逻辑上衡量长度的单位,由底层系统的程序使用,是一种虚拟像素,会由相关系统转换为物理像素。
物理像素
又称设备像素,就是我们常说的分辨率。
物理像素与屏幕密度有关,可以用来区分视网膜屏和非视网膜屏。
举个例子,iPhone 3GS 和 iPhone 4/4s 的尺寸都是 3.5 寸,但 iPhone 3GS 的分辨率是 320x480,iPhone 4/4s 的分辨率是 640x960,这也就是意味着同样长度的屏幕,iPhone 3GS 有 320 个物理像素,iPhone 4/4s 有 640 个物理像素。
设备像素比
我们统一 iPhone 3GS 和 iPhone 4/4s 都是 320 个虚拟像素,只是在 iPhone 3GS 上,最终 1 个虚拟像素换算成 1 个物理像素,在 iphone 4s 中,1 个虚拟像素最终换算成 2 个物理像素。
至于 1 个虚拟像素被换算成几个物理像素,这个数值我们称之为设备像素比。