zoukankan      html  css  js  c++  java
  • Android中的pix,sp,dp相关概念

    px( pixel) 像素,可以简单的理解为一个点或方块,用以颜色的显示(单位),一般指印刷品或屏幕设置设备的颜色显示定义。

    dip(device independent pixels)设备独立像素. 不同设备有不同的显示效果,这个和设备硬件有关,多为了支持WVGA、HVGA和QVGA 使用,不依赖像素。

    dpi(dots per inch)分辨率、解析度,每英寸像素数,多用于屏幕显示领域。类似的有ppi(Pixels per inch)多用于印刷领域。分辨率越高,则每英寸内包含的像素数越大。

    sp (scaled pixels)像素(图像)缩放,在 常规情况下,尺寸大的图像(像素数量或密度高)缩放为小图像(像素数量或密度小)时清晰度不变或清晰(原图模糊时),逆向则反之。但可以通过像素插值/超样采集等技术实现相对清晰(计算轮廓边缘模拟出相似或智能分析增加清晰度、圆润感)

    px(像素)和dpi(分辨率)的关系,分辨率表示每英寸内包含多少个像素,比如分辨率为72dpi时,即表明每英寸内有72个像素。在屏幕显示时像素和屏幕上的点可以是点对点或非点对点。

    sp(像素缩放)和px、dpi之间没有直接换算关系,比如一个原始图像为100×100px时,把它缩放为60×60或40×80(等比例缩放或自由缩放)相关的像素排列和原始颜色会打乱,减低或保持包含颜色数量(在常规放大时不会增加包含的颜色数量),边缘颜色数量会减少。
    dip和以上有些相似,这个因为未涉及不是很了解。网上找到一个换算/计算公式供参考:
    据px = dip * density / 160,则当屏幕密度为160时,px = dip
    根据 google 的建议,TextView 的字号最好使用 sp 做单位,而且查看TextView的源码可知Android默认使用sp作为字号单位。将dip作为其他元素的单位。

    作者:SunLau
    链接:https://www.zhihu.com/question/19625584/answer/14151522
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
     
  • 相关阅读:
    python线程池ThreadPoolExecutor用法
    redis学习笔记
    selenium + chrome 被检测,反反爬小记
    RabbitMQ单机快速安装使用
    NFS配置使用
    通过Rsync实现文件远程备份
    MySQL笔记-高可用方案
    Redis主从同步、哨兵模式、集群模式配置
    Redis维护笔记
    MongoDB笔记03——分片集群
  • 原文地址:https://www.cnblogs.com/ismallboy/p/5316138.html
Copyright © 2011-2022 走看看