要想理解二倍图,我们应该先理解几个概念。什么是像素?什么是像素密度?什么是分辨率?
像素
图片影视显示的最基本单位,也是最小单位。像素的单位是px,1像素=1px。
像素密度
常见表示方式有PPI,DPI等。
PPI(Pixels Per Inch)像素每英寸,主要用于图像显示;
DPI(Dots Per Inch)点数每英寸,主要用于输出设备,如打印机,扫描仪,各种显示屏幕等。
日常生活中各种屏幕主要是用来显示图像的,所以对于屏幕的像素密度人们约定俗成为1dpi=1ppi,也常常直接用PPI来表示屏幕的像素密度。
PPI计算公式: (X:长度像素数;Y:宽度像素数;Z:屏幕尺寸即对角线长度)。 DPI的计算公式类似。
下面两张图都为一英寸,但是他们的像素密度是不同的,左侧为3 X 3;右侧为5 X 5。
分辨率
分辨率可以细分为显示分辨率、图像分辨率、打印分辨率和扫描分辨率等,大多数人常说的分辨率为显示分辨率、图像分辨率。
这里的手机的PPI大约是电脑的PPI的三倍,电脑上的图用于手机上,在切图时就要使用三倍图了。
一倍图
Google发布的第一部安卓设备的像素密度为160DPI,后续文档设定160DPI为一倍图。上文说了可以简单的把1DPI等同于PPI。
在电脑上像素密度大致等于160PPI。
二倍图(三倍图)
同样的分辨率在电脑上和手机上由于设备尺寸的原因,会导致像素密度的不同。像素密度的倍数关系就决定了你需要使用几倍图。
在PPI为160的PC端一张1英寸的图,它的图像分辨率大致为113px X 113px。
在PPI为320的手机端一张1英寸的图,它的图像分辨率大致为226px X 226px。
图片分辨率之所以会乘2,是由于PPI固定,图片尺寸也被限制为1英寸,为了保证图片的清晰度,就会使图片的PPI与设备的PPI保持一致(想一下PPI公式)。
理解这个二倍图不能按照常规思维想,不是由50px变为100px,你眼睛看到的图片就一定变大的2倍,也可能看起来一样大(参考上文的两个红色图)。
在PxCook中由一倍图切换为二倍图时,图片看上去并没有变化,但是分辨率已变为原来的2倍。