如何根据iphone的设计图算出安卓中的dp不懂数学也会计算
简书链接:如何根据iphone的设计图算出安卓中的dp不懂数学也会计算
文章字数:448,阅读全文大约需要1分钟
ppi的运算方式是:
PPI = √(长度像素数² + 宽度像素数²) / 屏幕对角线英寸数
dp:Density-independent pixels,以160PPI屏幕为标准,则1dp=1px,
dp和px的换算公式 :
px=dp*ppi/160 。比如1dp x 320ppi/160 = 2px。
sp:Scale-independent pixels,它是安卓的字体单位,以160PPI屏幕为标准,当字体大小为 100%时, 1sp=1px。
sp 与 px 的换算公式:
px=sp*ppi/160
总结得出:
px = dp*ppi/160
dp = px / (ppi / 160)
px = sp*ppi/160
sp = px / (ppi / 160)
所以
dp = sp?
iphone 6 分辨率 750 x1608
求出ppi
7502+ 16082
sqr(1608)+sqr(750)=1608x1680+ 750x750 =3148164
sqrt(3148164)/4.7=377.51204
ppi=377.51204
代入公式
(377.51204/160)=2.35
50px=?
= 50/2.3504
=21.2765
iphone6是4.7英寸
那么是1.322 ppi
所以 是 2.3504
所以给出一个2x的图 那么就是实际的px像素除2.3504
最后
为什么标题说不懂数学也会计算呢?
因为我这上面贴了计算器了,只要套入公式就行了,玩毛子数学。
参考:
[无线手册-4] dp、sp、px傻傻分不清楚[完整]
http://zhuanlan.zhihu.com/zhezhexiong/19565895
Supporting Different Screens | Android Developers
http://developer.android.com/training/basics/supporting-devices/screens.html#create-bitmaps
Iconography | Android Developers
http://developer.android.com/design/style/iconography.html
Devices and Displays | Android Developers
http://developer.android.com/design/style/devices-displays.html