做了幾個(gè)移動(dòng)端的項(xiàng)目之后放仗,深感移動(dòng)端尺寸換算的必要性润绎,在此做個(gè)總結(jié)。
先介紹下各自的定義:
px:pixel诞挨,像素,電子屏幕上組成一幅圖畫或照片的最基本單元
pt: point呢蛤,點(diǎn)惶傻,印刷行業(yè)常用單位,等于1/72英寸
ppi: pixel per inch其障,每英寸像素?cái)?shù)银室,該值越高,則屏幕越細(xì)膩
dpi: dot per inch励翼,每英寸多少點(diǎn)蜈敢,該值越高,則圖片越細(xì)膩
dp: dip汽抚,Density-independent pixel, 是安卓開發(fā)用的長(zhǎng)度單位抓狭,1dp表示在屏幕像素點(diǎn)密度為160ppi時(shí)1px長(zhǎng)度
sp: scale-independent pixel,安卓開發(fā)用的字體大小單位造烁。
以下是換算關(guān)系:
一否过、pt和px
公式一: 1pt=? (DPI / 72) px
當(dāng)photoshop中新建畫布的分辨率為72ppi( 即 72dpi時(shí) )午笛, 1pt=1px; 當(dāng)新建畫布分辨率為72*2=144ppi時(shí)苗桂,1pt=2px
二药磺、ppi和dpi
dpi最初用于衡量打印物上每英寸的點(diǎn)數(shù)密度。DPI值越小圖片越不精細(xì)煤伟。當(dāng)DPI的概念用在計(jì)算機(jī)屏幕上時(shí)癌佩,就應(yīng)稱之為ppi。同理: PPI就是計(jì)算機(jī)屏幕上每英寸可以顯示的像素點(diǎn)的數(shù)量便锨。因此围辙,在電子屏幕顯示中提到的ppi和dpi是一樣的,可認(rèn)為
公式二:dpi=ppi
三鸿秆、ppi計(jì)算方法
ppi是指屏幕上的像素密度酌畜,其計(jì)算方法為:
公式三: ppi= 屏幕對(duì)角線上的像素點(diǎn)數(shù)/對(duì)角線長(zhǎng)度 = √ (屏幕橫向像素點(diǎn)^2 + 屏幕縱向像素點(diǎn)^2)/對(duì)角線長(zhǎng)度?
以小米2s為例,該屏幕分辨率為720px*1280px卿叽,4.3英寸桥胞。則點(diǎn)密度為 √ (720^2 +1280^2) /4.3 = 342ppi。
四考婴、px和dp
dp為安卓開發(fā)時(shí)的長(zhǎng)度單位贩虾,根據(jù)不同的屏幕分辨率,與px有不同的對(duì)應(yīng)關(guān)系沥阱。
安卓端屏幕大小各不相同缎罢,根據(jù)其像素密度,分為以下幾種規(guī)格:
1dp定義為屏幕密度值為160ppi時(shí)的1px考杉,即策精,在mdpi時(shí),1dp = 1px崇棠。 以mdpi為標(biāo)準(zhǔn)咽袜,這些屏幕的密度值比為:ldpi : mdpi : hdpi : xhdpi : xxhdpi = 0.75 : 1 : 1.5 : 2 : 3;即枕稀,在xhdpi的密度下询刹,1dp=2px;在hdpi情況下萎坷,1dp=1.5px凹联。其他類推。
公式四: 1dp=(屏幕ppi/ 160)px
以WVGA屏為例哆档,該屏幕為480px*800px蔽挠,按3.8寸屏算,點(diǎn)密度 √ (480^2 + 800^2) / 3.8 = 245虐呻,約等于240象泵,對(duì)應(yīng)于hdpi屏幕寞秃,所以該屏幕1dp=1.5px
五、dp和sp
dp和sp都是安卓的開發(fā)單位偶惠,dp是長(zhǎng)度單位春寿,sp是字體單位。sp與dp類似忽孽,但是可以根據(jù)用戶的字體大小首選項(xiàng)進(jìn)行縮放绑改。Android系統(tǒng)允許用戶自定義文字尺寸大小(小兄一、正常厘线、大、超大等等)出革,
公式五:當(dāng)文字尺寸是“正吃熳常”時(shí)1sp=1dp,而當(dāng)文字尺寸是“大”或“超大”時(shí)骂束,1sp>1dp耳璧。
一般情況下可認(rèn)為sp=dp。
總結(jié):由于做設(shè)計(jì)時(shí)以xhdpi為模板展箱,xhdpi條件下旨枯,1dp=2px。若新建畫布時(shí)混驰,將畫布分辨率設(shè)為144ppi攀隔,則1pt=2px=1dp。此時(shí)栖榨,即可將pt等同于dp昆汹。標(biāo)注長(zhǎng)度的時(shí)候,將長(zhǎng)度像素除以2即為dp值婴栽。
PS:在photoshop cc中切圖時(shí)筹煮,可直接在.png 圖片圖層名稱前加上200%獲得2倍大小的圖,其他比例的切圖以此類推居夹。輸出的兩倍圖不模糊的前提是,該圖是photoshop中用形狀工具畫出來的未被柵格化的圖形本冲,而不是已被柵格化的圖層或外部導(dǎo)入的圖片准脂。
————————————————————————————
====我的公眾號(hào):BaolingUX====