dp, dpi, ppi, sp, px 详细介绍

来源:互联网 发布:淘宝店铺招牌设计 编辑:程序博客网 时间:2024/06/06 04:00

参考资料

http://www.zhihu.com/question/21220154/answer/18584739
http://mp.weixin.qq.com/s?__biz=MjM5NTA0NjY4MA==&mid=203073243&idx=1&sn=c71ff9f0c0fb96fea2d3ea2b213018e1#rd

概念解释

dpi是dot per inch,每平方英寸多少点,印刷品点密度
ppi是 Pixel per inch,每平方英寸像素数,设备的像素密度
px是像素,只针对显示器
dp,dip,sp是android使用的单位,为了匹配不同屏幕的手机,不能指定px大小(我理解为绝对大小)。

换算公式

屏幕分辨率为X × Y
ppi = √ (X^2 + Y^2) / 屏幕尺寸(inch)
对显示器而言,dpi=ppi

标准定义下。dpi/ppi为160的情况下,dp,dip,px为同一个计量单位。
除此之外:
dip 和 dp是同一个计量单位,即dip = dp。
dp 和 px 转换的时候有一个重要的参数。
伸缩密度:scaledDensity。具体的转换公式为
px = dp × scaledDensity
scaledDensity = ppi / 160

sp与px的换算方法和dp一致,主要用来表示字体,常用大小有12,14,16,18

查看更过
读取屏幕参数的方法

举例:
HVGA屏320*480,一般是3.5寸,ppi为√ (320^2 + 480^2) / 3.5 = 164,约等于160,1pd=1pxWVGA屏480*800,按3.8寸屏算,ppi √ (480^2 + 800^2) / 3.8 = 245,约等于240,1dp=1.5px。

0 0
原创粉丝点击