IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    墨刀:设备无关像素与分辨率的关系

    小旭旭发表于 2015-10-09 11:03:34
    love 0

    墨刀中的设备无关像素宽高指的是dip或dp这个单位,而设计师给出的设计稿单位一般为px也就是像素。大家可能会问像素(px)和设备独立像素(dp)有什么区别呢?看一下下面的解释你就懂了~

    设备无关像素与分辨率
    设备无关像素与分辨率

    首先解释一下dip/dp、px的定义吧

    px (pixels):像素,就是屏幕上实际的像素点单位。

    dip/dp (device independent pixels):设备独立像素,是一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp = 1px。

    dip产生的缘由

    为了兼容各种各样分辨率的设备,让显示效果更完美,Android从1.6开始,加入了设备独立像素dip/dp。

    px和dp是有换算公式的,在标准屏幕480*320上,px与dp是1:1。分辨率高的,比如800*480,就要按比例兑换成480*320。

    具体的换算计算公式

    px = dip * (dpi / 160)

    这个公式就很好的解释了上面两个例子:当屏幕密度(dpi)为160时,px = dip。

    也可以根据下面的图表计算出px与dp的关系

    计算出px与dp的关系
    计算出px与dp的关系

    结合公式和图表我们可以算出

    分辨率为320 x480时,屏幕密度默认值为160,由公式得出px=dp;当分辨率为480 x800时,屏幕密度默认值为240,由公式得出px=1.5dp。

    开发者在开发的时候,使用换算后的dp,系统会自动按比例计算为px,从而适配视图。

    结论

    墨刀正是为了兼容不同屏幕密度显示器的显示情况,才选择了dip/dp这一单位。大家可以将原型制作过程中用到的各种字号尺寸数据记录下来,让开发人员免去换算步骤,工作效率更高。



沪ICP备19023445号-2号
友情链接