关于像素的区别--备用

英文字体的1磅,相当于1/72 英寸,约等于1/2.8mm。
12PT的字打印出来约为4.2mm。网页中12px的字才相当于12像素。 
虽然 四号=(14/72)*96=18.6px 更接近 19px,但是因为 18px 是点阵,所以系统还是优先显示点阵字号的。
换句话说:四号=18px

1 像素 = 1/96 英寸
1 英寸 = 25.4毫米
10px=0.625em (em 是啥jb玩意)
 
在分辨率是300像素/英寸下,五号字为43.7PX(PX为像素),小五为37.2px
分辨率改变,字号对应的像素也改变
 

 

 

以下文章知其然不知其所以然,只能先看看,还有,现在的分辨率除了640x480这几种,还有720x1080这些,所有不一定就是 HVGA屏density=160;QVGA屏density=120WVGA屏density=240;WQVGA屏density=120,所以必须要知道如何计算。

android手机屏幕分辨率 及 sp dip(dp) px 区别 及高中低分辨率时处理

分辨率,是指单位长度内包含的像素点的数量,它的单位通常为像素/英寸(ppi)。以分辨率为1024×768的屏幕来说,即每一条水平线上包含有1024个像素点,共有768条线,即扫描列数为1024列,行数为768行。分辨率不仅与显示尺寸有关,还受显像管点距、视频带宽等因素的影响。

 主流分辨率:

代号 分辨率 代号 分辨率
QVGA 320*240像素 WQVGA 400*240像素
HVGA 320*480像素 VGA 640*480像素
WVGA 800*480像素 XGA 1024*480像素

 


QVGA 即Quarter VGA。顾名思义即VGA的四分之一尺寸 
HVGA (Half-size VGA),即VGA(640*480)的一半
WVGA 即Wide VGA
WQVGA 全称:Wide Quarter Video Graphics Array

 

sp  dip  px

sp :(scaled pixels—best for text size)——带比例的像素。 主要是用于字体显示,由此根据google的建议,TextView的字体大小最好用sp做单位,而且查看TextView的源码可知Android默认使用水平作为字号单位。

 

dip:(device independent pixels)——设备独立像素:这个和设备硬件有关,一般哦我们为了支持WVGA、HVGA和QVGA推荐使用这个,不依赖于像素。等同于dp。

一般以HVGA(320*480)为标准,比如说一个Button控件,width为160dip,则此Button在WVGA、HVGA、QVGA、WQVGA中宽度都为屏幕的一半

 

px:px(pixels)——像素:不同的设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。在HVGA中 1dip = 1px(慎用!)

 

总结:字体用sp,其它控件用dip(dp)

 

 高中低分辨率的处理

android开发 drawable(hdpi,mdpi,ldpi)的区别

android从2.1版本开始drawble分为drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。

  drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:

  (1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)

  (2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)

  (3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)

  系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。

  在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。

在项目中使用实例:

                               <ImageView

                                android:src="@drawable/zxy" //依然使用drawble的路径,而且图片名不加格式
                                android:layout_width="fill_parent" 
                                android:layout_height="fill_parent"
                                />

 

得到屏幕宽高代码:

WindowManager wm = (WindowManager)getSystemService(WINDOW_SERVICE); 

Display d  = wm.getDefaultDisplay();

d.getWidth();

d.getHeight();

 


中文字号VS英文字号(磅)VS像素值的对应关系:

八号=5磅(5pt) ==(5/72)*96=6.67 =6px

七号=5.5磅 ==(5.5/72)*96=7.3 =7px
小六=6.5磅 ==(6.5/72)*96=8.67 =8px
六号=7.5磅 ==(7.5/72)*96=10px
小五=9磅 ==(9/72)*96=12px
五号=10.5磅 ==(10.5/72)*96=14px
小四=12磅 ==(12/72)*96=16px
四号=14磅 ==(14/72)*96=18.67 =18px
小三=15磅 ==(15/72)*96=20px
三号=16磅 ==(16/72)*96=21.3 =21px
小二=18磅 ==(18/72)*96=24px
二号=22磅 ==(22/72)*96=29.3 =29px
小一=24磅 ==(24/72)*96=32px
一号=26磅 ==(26/72)*96=34.67 =34px
小初=36磅 ==(36/72)*96=48px
初号=42磅 ==(42/72)*96=56px
初号=42磅=14.82毫米 
小初=36磅=12.70毫米 
一号=26磅=9.17毫米 
小一=24磅=8.47毫米 
二号=22磅=7.76毫米 
小二=18磅=6.35毫米 
三号=16磅=5.64毫米 
小三=15磅=5.29毫米 
四号=14磅=4.94毫米 
小四=12磅=4.23毫米 
五号=10.5磅=3.70毫米 
小五=9磅=3.18毫米 
六号=7.5磅=2.56毫米 
小六=6.5磅=2.29毫米 
七号=5.5磅=1.94毫米 
八号=5磅=1.76毫米 

字号      OpenXMl大小    像素大小
初号      84            56    
小初      72            48
一号      52            34
小一      48            32
二号      44            29
小二      36            24
三号      32            21
小三      30            20
四号      28            18
小四      24            16
五号      21            14
小五      18            12
六号      15            10
小六      13            8
七号      11            7
八号      10            6

 

 

未完待续。。。

posted on 2015-12-08 21:16  &#127774;Bob  阅读(486)  评论(0编辑  收藏  举报

导航