android 上dip dp px sp等单位说明

版权声明:本文为博主原创文章,未经博主允许下请随便转载。 https://blog.csdn.net/god_wen/article/details/88376689

文章目录

px

pixel像素,物理单位改变不了

in

inches 英寸
1 inch=2.54 centimeters 物理单位改变不了。我们说某个屏幕时多少英寸的说的是对角线多少英寸

mm

millimeters 毫米 物理单位改变不了

dot

dot 是显示器上的最小的物理点,有些显示器可能会让2dot = = 1px 这时候 1dot \ne 1px。物理元素不可更改。

dppx
dot per pixel,查看dot和pixel 的对应关系 。物理元素不可更改。

dpi

dot per inch,单位英寸点密度。物理元素不可更改,计算公式如下:
D P I = h e i g h t 2 + w i d t h 2 i n c h DPI = \frac{\sqrt{height^2 + width ^ 2}}{inch}
width和height 表示横纵的dot数目

ppi

pixels per inch 单位英寸的像素密度,物理元素不可更改,计算公式如下:
D P I = h e i g h t 2 + w i d t h 2 i n c h DPI = \frac{\sqrt{height^2 + width ^ 2}}{inch}
width和height 表示横纵的pixel数目

dp/dip

density-independent pixels 与密度无关像素,dp和dip等价但是推荐写dp。dp人为定义的单位,它表示1像素在160dpi屏幕上的长度。公式推到如下:

(1) 1 d p = 1 p x 160 d p i 1dp = \frac{1px}{160dpi}\tag{1}
又因为

(2) 160 d p i = 160 p x i n c h 160dpi=\frac{160px}{inch}\tag{2}

联立可以消掉px
(3) 1 d p = i n c h 160 1dp=\frac{inch}{160}\tag{3}

所以idp等于1/160英寸。

如果想获得dp,dpi,px三者的关系,可以把2公式代入三公式

1 d p = p x 160 d p i 1dp=\frac{px}{160dpi}

猜你喜欢

转载自blog.csdn.net/god_wen/article/details/88376689