文档章节

px 与 dp 与 sp 换算

yaly
 yaly
发布于 2015/02/27 09:32
字数 347
阅读 24
收藏 0

PPI = Pixels per inch,每英寸上的像素数,即 "像素密度"

  • xhdpi: 2.0

  • hdpi: 1.5

  • mdpi: 1.0 (baseline)

  • ldpi: 0.75


drawable-ldpi、drawable-mdpi、drawable-hdpi 精度分别为低、中(android默认)、高。
对应的图片大小为:36x36、48x48、72x72。

xxhdpi: 144*144
xhdpi:96*96
hdpi:72*72
mdpi:48*48
ldpi:36*36

dp是虚拟像素,在不同的像素密度的设备上会自动适配,比如:
在320x480分辨率,像素密度为160,1dp=1px
在480x800分辨率,像素密度为240,1dp=1.5px
计算公式:1dp*像素密度/160 = 实际像素数

drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
(1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
(2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)
(3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)
系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。


 ppi的运算方式是:

PPI = √(长度像素数² + 宽度像素数²) / 屏幕对角线英寸数

dp:Density-independent pixels,以160PPI屏幕为标准,则1dp=1px,

dp和px的换算公式 :
dp*ppi/160 = px。比如1dp x 320ppi/160 = 2px。

 

sp:Scale-independent pixels,它是安卓的字体单位,以160PPI屏幕为标准,当字体大小为 100%时, 1sp=1px。

sp 与 px 的换算公式:sp*ppi/160 = px

 

总结得出:

px = dp*ppi/160
dp = px / (ppi / 160)

px = sp*ppi/160
sp = px / (ppi / 160)

dp = sp? 


本文转载自:http://www.cnblogs.com/bluestorm/p/3640786.html

共有 人打赏支持
yaly
粉丝 3
博文 97
码字总数 48319
作品 0
海淀
Android工程师
私信 提问
什么是dp,dip,sp和px及他们之间的的关系?《二》

前言 首先要说的是,Android的碎片化的问题非常严重。因为 Android厂商非常多,设备非常多,产生了各种各样的分辨率。 为了解决碎片化的问题,Android 开发文档中定义了 dp,sp 等新的单位 ...

goodgleCoder
01/04
0
0
雪梦尺寸换算器

雪梦尺寸换算器是一款方便Android开发者的单位换算小工具。 在dp、dip、sp、pt、px、mm、in之间相互换算(和设备相关) 在ldpi、mdpi、tvdpi、hdpi、xhdpi、xxhdpi、xxxhdpi之间相互换算 要求...

snowdream
2014/11/05
471
1
扒一扒那些px、pt、ppi、dpi、dp、sp之间的关系

原文出处:Snow 做了几个移动端的项目之后,深感移动端尺寸换算的必要性,在此做个总结。 先介绍下各自的定义: px:pixel,像素,电子屏幕上组成一幅图画或照片的最基本单元 pt: point,点,...

Snow
2015/09/29
0
0
App 切图规范

如何切图? 了解iphone界面的尺寸 最小的分辨率是320x480,我们把这个尺寸定为基准界面尺寸(baseline),基准尺寸所用的图标定为1倍图(1x)。 在实际设计过程中,为了降低设计成本,一般拿...

iSnowFlake
2016/03/01
55
0
android计量单位--dip、px、sp之间区别与联系

在页面布局的时候,很多时候需要指定控件宽、高、距离其他控件及边界的距离,字体大小等,都需要计量单位,它们的具体含义以及相互之间如何切换呢?(资源均来自网上整理所得) 1. dip: devi...

迷途d书童
2012/03/30
443
0

没有更多内容

加载失败,请刷新页面

加载更多

DataFrames中的reindex用法

from pandas import DataFrame frame = DataFrame(np.arange(9).reshape((3,3)),index=['a','c','d'],columns=['Ohio','Texas','California'] states = ['Texas','Utah','California'] frame......

卖小孩的小火柴
23分钟前
1
0
拜托!面试请不要再问我Spring Cloud底层原理

毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本...

James-
23分钟前
1
0
Shiro框架

提供了认证,授权,加密,会话管理等功能 在spring配置文件中配置shiro,需要配置的有shiro的过滤器工厂,在里面我们可以配置什么页面需要认证,什么认证不需要认证,认证成功后跳转的路径,认证失败...

tinder_boy
26分钟前
0
0
有关定时任务的表达式--cron 详细解

Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: Seconds Minutes Hours DayofMonth Month DayofWeek Year或 Seconds Minu...

kuchawyz
28分钟前
1
0
下一代大数据处理引擎,阿里云实时计算独享模式重磅发布

11月14日,阿里云重磅发布了实时计算独享模式,即用户独享一部分物理资源,这部分资源在网络/磁盘/CPU/内存等资源上跟其他用户完全独立,是实时计算在原有共享模式基础上的重大升级。 (观看...

阿里云云栖社区
28分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部