Ⅰ DPI和PPI
不論是DPI還是PPI,實際都是一種換算的概念,即將圖片承載的信息換算為現實中的圖片(即人眼能實際看到的圖像)。DPI和PPI的區別在於換算的途徑不同,DPI面向的是印刷受體,而PPI面向的是熒幕。
PPI是英文Pixels Per Inch的縮寫,意為像素每英寸。英寸是常用的長度單位,大約相當於2.54厘米。而像素是專用於熒幕的概念,指的是熒幕可以解析的最小的點。因此,PPI值得是像素在熒幕上的密度,PPI越高圖像就越清晰
舉例來說,如果電腦屏幕是2K解析度,即1920×1080像素,它的圖像寬為1920像素。而如果這個電腦屏幕的物理寬度是19.2英寸,電腦屏幕是解析度就是1920/19.2=100PPI。
DPI是英文Dots Per Inch的縮寫,意為點每英寸。應粗你還是那個英寸,但是點的意義有很多。一般來講,你可以把Dot理解為取樣點,即物理設備可以解析的最小單位。在印刷時,它就可以作為印刷網點,而在滑鼠等電子設備上,可以理解為最小操作閾值(即設備會把多麼遠的兩個點當作一個點來處理)。
我們仍然拿1920×1080像素的圖片來舉例子,如果印刷設備的解析能力剛好是100DPI,而且你要印製的紙張尺寸剛好是19.2英寸,那麼印刷設備就可以剛好把一個像素作為一個取樣點,印刷完成後圖片的保真度是百分之百(也就是圖片所有的視覺信息都被印刷出來了)。在大多數情況下,這幾個數值都不那麼整好,因此保真度會產生損失。
1.在條件允許的情況下,圖片解析度越高越好 我們可能不會有精力去關心圖片信息量的DPI是多少,印刷設備的DPI又是多少這種細節的問題。但有一點是可以確定的,那就是圖片只要足夠大,印刷就會清晰。
2.如果有可能,使用准確的數值 許多軟體可以幫助你了解圖片實際尺寸下的PPI,比如使用Photoshop,在300PPI下創建A4的文件(尺寸21×29.7厘米,對應解析度2480×3508像素)並做出圖片,那麼大多數情況下都可以完美印刷。
正如前文所述,大多印刷設備的解析能力是300DPI,因此在該圖片的信息量下,1個像素剛好對應1個點,甚至不需要柵格處理。而如果你強行使用400PPI來創建A4尺寸的文件,拿到300DPI的設備上會被柵格,說不定還不如300DPI的質量好(畢竟是有損處理,但這種差別未必能看得出來)。
下圖是蘋果官方對iPhone 機型的介紹:
拿iPhone7 Plus來說:
屏幕尺寸:5.5英寸
手機解析度(像素):1920 (高)x 1080(寬)
PPI:401
屏幕尺寸:表示手機屏幕對角線的長度,單位是英寸。1英寸(inch)=2.54厘米(cm)
手機解析度:解析度可以從顯示解析度與圖像解析度兩個方向來分類。
顯示解析度(屏幕解析度):屏幕 圖像 的精密度,是指 顯示器 所能顯示的 像素 有多少。由於屏幕上的點、線和面都是由像素組成的,顯示器可顯示的像素越多,畫面就越 精細 ,同樣的屏幕區域內能顯示的信息也越多。
圖像解析度:單位英寸中所包含的像素點數,其定義更趨近於解析度本身的定義。
解析度的單位:(dpi 點每英寸 )、lpi(線每英寸)和ppi( 像素每英寸 )。但只有lpi是描述光學解析度的尺度的。雖然dpi和ppi也屬於解析度范疇內的單位,但是他們的含義與lpi不同。而且lpi與dpi無法換算,只能憑經驗估算。ppi和dpi經常都會出現混用現象。但是他們所用的領域也存在區別。從技術角度說,「像素」只存在於電腦顯示領域,而「點」只出現於列印或印刷領域。
ppi:Pixels Per Inch,屏幕像素密度,每英寸屏幕所擁有的像素數,在電腦顯示領域使用。
dpi:Dots Per Inch,每英寸長度上的點數,在列印領域使用。
屏幕像素密度,解析度,屏幕尺寸的關系
所以美工使用PS作圖的大小為手機解析度的大小。
如需要設計適配iPhone7的手機,我們使用1334 x 750px大小
但有一點是特殊的,就是iPhone6(s) plus、iPhone7 plus,我們需要使用2208 x 1242px大小,
原因:
ppi為326的手機,使用的為@2x的素材,對於ppi是401的手機,理論上蘋果應該用401/326 * @[email protected]的素材。但是這個奇葩的比例對開發者而言很難切圖。所以蘋果為方便開發者用的是@3x的素材,然後再縮放到@2.46x上,實際上是縮放到2.46/3=83%。實際上蘋果選取了一個接近比例的87%。
這樣算下來,物理解析度和虛擬分比率的比例是87%,也就是1920/0.87=2208,1080/0.87=1242.
好處就是開發者更方便,比如准備素材時,字型大小可以直接調成3x的。
概述
前段時間看了小米8的發布會,其中屏幕參數是如下介紹的:
當時我就在想這都是怎麼算出來的,雖然我知道 PPI 是指屏幕每一英寸上包含的像素點,但是稍微往深一想我發現我對這些參數真的很迷茫,好奇心驅使我做了些調查。
像素,英文為 Pixel ,是我們日常最熟悉不過的了,但是深入進去會發現其蘊含的知識量是巨大的,此篇對於像素話題也只是淺嘗輒止,拋磚引玉。
討論像素需要分不同的場景: 1. 數字圖像 我們程序員日常工作中接觸並討論的像素大多是指這個范疇。
光柵圖片(Bitmap)是我們日常接觸最多的,例如 jpg,jpeg,png,gif,bmp等等,另一種比較常見的就是矢量圖了。 光柵圖片是由一個一個像素組成的,那麼像素包含哪些信息?有物理尺寸嗎?
每個像素由顏色信息組成,有的還包含一個透明度信息。因為可以通過三原色 Red , Blue , Green 來混合出很多種顏色,所以一個像素就可以使用存儲這三種顏色的一個數據結構表示。一個像素佔用內存的大小,與其使用多少位來表示這些顏色有關,例如最簡單的像素只有一個 bit ,那麼它只能表示兩個狀態,0或者1,對應到圖像上也就是黑白。當一個像素達到24 bit 的時候,RGB每個通道佔8位,可以組合出來的顏色已經有1677萬色(256 256 256=16,777,216)種了,而人類眼睛可以分辨的顏色也只有大概1000多萬種,此時就是真彩色了。當然還有32位真彩色,感興趣的可以去研究。
圖片來自 維基網路
那麼通過以上的介紹,我們可以得出結論,此處的像素沒有物理尺寸,僅僅是一些數據,只有將其顯示在物理設備上才會存在物理尺寸。
可以通過下圖感受一下
圖片來源
討論解析度仍然需要分討論場景 1. 數字圖像 此時解析度是用來描述圖片的像素信息的,比如我們說一張圖片的解析度是1280 720,那麼僅僅是說明這張圖片是由1280個像素 720個像素組成的。如下圖所示,至於這張圖片的尺寸有多大,清晰還是模糊,這取決於它自身的存儲格式以及用來顯示它的設備。
2. 硬體顯示設備 是指這塊屏幕所包含的像素(這個像素是物理上的,前面我們已經討論過了)。例如小米8的屏幕解析度為2248x1080,說明這塊屏幕包含了這么多物理像素。
那麼圖片的解析度與屏幕的分別率是什麼關系呢?這需要清楚了 PPI 後才可以回答這個問題。
DPI 是印刷業使用的單位,其表示的是列印紙上每一英寸包含的墨點數量,而 PPI 是電子屏幕上每一英寸上包含的可定址物理物理顯示單元。其中英寸是西方慣用長度單位,等於2.54厘米。這兩個概念之所以如此容易混淆,就是因為一些軟體提供商做的孽,例如Microsoft,Adobe,Apple 等等,他們經常將這兩個概念互換使用。
PPI : Pixels Per Inch, 每一英寸上包含的像素個數。 這個值越高,屏幕的顯示能力越強,例如小米8 PPI的計算方式如下圖所示
可見小米8的 PPI 是401.6,而其官方宣稱為402,估計是四捨五入了,不過不知道半個像素怎麼處理,知道的可以告訴我一下。
DPI : Dots Per Inch, 每一英寸上包含的點個數。 與PPI計算方式一樣,只是應用的領域不同,這個用在印刷業的。
至此我們可以回答圖片的解析度與屏幕的解析度的關系了,以小米8為例,按照 圖片比例全屏 顯示某一張圖片: 第一:當將一張1080 2248像素的圖片顯示在Mi8上時,屏幕上的每一個物理像素對應一個圖片像素,可以完美顯示。 第二:當將一張2000 2248像素的圖片顯示在Mi8上時,Mi8的屏幕在寬度上是無法顯示的,所以顯卡會將圖片光柵化,通過一定的演算法將2000個像素減少到1080個像素,由於是從多到少的處理,所以圖片是清晰的。 第三:當將一張720*1280像素的圖片顯示在Mi8上時,顯卡會將圖片光柵化,將圖片以其中一邊為標准拉伸,圖片會變模糊。
Pt :漢語翻譯為 榜 ,是一個物理尺寸,長度為1/72 英寸,在概念上Pt與Px毛關系也沒有,但是在 photoshop 中就有關系了。 photoshop 中的pt卻是一個相對單位(這幫二貨各種混用)
換算公式: 1pt= (DPI / 72) px 。
dp : Density-independent Pixels, 這個是android基於物理設備的 ppi 抽象出來的一個單位。它是以 160dpi 的屏幕為基準定義的,在 160dpi 的屏幕的屏幕上 1dp=1px ,那麼我們就可以得出其
換算公式: 1dp=(屏幕ppi/ 160)px
目前Android系統的屏幕分類如下表 |密度分類| 屏幕密度 | |--|--| |ldpi |120dpi | |mdpi |160dpi | |hdpi |240dpi | |xhdpi |320dpi | |xxhdpi |480dpi | |xxxhdpi |640dpi |
sp : Scale-independent Pixels,其與dp基本一樣,也是像素無關的,但是是用在描述字體的大小上。其尺寸會同時相應屏幕密度以及用戶對字體的偏好設置。 例如:在手機的字體設置為默認大小時,使用 dp 與 sp 描述字體的大小是一樣的,如下圖
但是當我們改變了手機的字體默認設置的字型大小後, dp 描述的字體大小沒有變化,但是 sp 描述的字體大小卻相應的發生了變化,如下圖。
除此之外 dp 與 sp 再無差異,一般建議字體使用 sp 作為單位。
dip 就是 dp 互為別名,沒有任何區別,其與 px 關系見上文。
以上就是關於顯示接觸GUI開發的程序員應該了解的,本來以為很簡單,但是調查後發現再往深研究我將會陷入泥潭無法自拔。同時我也感受到,人類社會發展到目前的水平,任何一個門類的知識都足以讓一個人投入終身的時間去研究,那我們程序員除了賺錢養家是不是應該找個自己感興趣方向忠貞不渝的投入一生業余精力去嘗試研究一番呢?在此我覺得我很挫敗,突然發現自己這么大年紀了竟然沒有愛好,如果愛好美女這個不算的話。。。!
我們的原圖是一份長寬都是1800像素的圖片。
這張圖片長寬都是1800像素 ,對它自己而言,DPI和PPI沒有意義。
它的解析度參數,僅僅是1800像素而已。
假設我們的所有印刷機、列印機、噴繪機,在原尺寸下都將1像素映射為1個點(即1Px/Dots),可以進行下面這些計算。
如果我們使用300DPI的印刷機,原尺寸列印這張圖,那麼它的長寬為:
1800 Px / (1Px/Dots) / 300 DPI = 6 in 即長寬都是6英寸(15.24厘米)。
如果我們使用220DPI的列印機, 原尺寸列印這張圖,那麼它的長寬為:
1800 Px / (1Px/Dots) / 220 DPI ≈ 8.19 in 即長寬都是8.19英寸(20.8厘米)。
如果我們使用72DPI的噴繪機, 原尺寸列印這張圖,那麼它的長寬為:
1800 Px / (1Px/Dots) / 72 DPI = 25 in 即長寬都是25英寸(63.5厘米)。
使用81PPI的一般顯示器,原尺寸顯示這張圖, 那麼它的長寬為:
1800 Px / 81 PPI ≈ 22.2 in 即長寬都是22.2英寸(56.4厘米)。
顯示器的PPI 我們假設顯示器是方形像素,那麼顯示器的PPI是由它的解析度和長寬共同決定的。
即顯示器的橫向PPI=顯示器的橫向解析度(Px)/顯示器的寬度(in)。
我們常說的顯示器的英寸數,是其對角線的長度。 對於16:9的顯示器來說,PPI可以這樣計算:
PPI = sqrt { (像素寬 * 像素高) / [16 * 9 * 英寸數^2 / (16^2 + 9^2)] }
舉例來說,1920*1080像素的24寸顯示器,PPI就是:
PPI = sqrt { (1920 * 1080) / [16 * 9 * 24^2 / (16^2 + 9^2)] } ≈ 91.7878
下面的表格計算了常見顯示器尺寸的PPI,你可以用這個公式檢驗:
Ⅱ dpi和ppi的區別是什麼
一、概念上的區別:
ppi和dpi確實是兩個概念,但是有些事情是約定成俗的,圖片的ppi無法反映這張圖片能在沖印店得到的沖印質量。
二、圖像原子上的區別:
顯示器像素Pixel,單位PPI,常見標准72PPI;列印機墨點Dot,單位DPI,常見數值>1000DPI。
像素數目
手機屏幕的PPI當達到一定數值時,人眼就分辨不出顆粒感了。按照2010年前蘋果公司CEO史蒂夫·喬布斯(Steve Jobs)在iPhone 4發布會上對視網膜技術的介紹:「當你所拿的東西距離你10-12英寸(約25-30厘米)時。
它的解析度只要達到300ppi這個『神奇數字』(每英寸300個像素點)以上,你的視網膜就無法分辨出像素點了。」即使是做出解析度的產品,這也要看它的飽和度,渲染度。
以上內容參考:網路—PPI
Ⅲ Android 關於"尺寸"的那些事(dp,dip,sp,pt,px...)
屏幕大小:屏幕大小是手機對角線的物理尺寸,以英寸inch為單位。比如我的Mix 2手機屏幕大小為5.99 inches,意味著我的屏幕對角線長度為5.99inches = 5.99 * 2.54 = 15.2146cm
解析度:屏幕的像素點數,一般表示為a*b。例如某手機解析度為21601080,意味著手機屏幕的豎直方向(長)有2160個像素點,水平方向(寬)有1080個像素點。
px :Pixels ,像素;對應屏幕上的實際像素,是畫面中最小的點(單位色塊),像素大小沒有固定長度值,不同設備上1個單位像素色塊大小不同。
這么說可能有點陌生,用屏幕解析度來說,今年流行起來的「全面屏」解析度是 2160*1080,但是你也可以發現,雖然很多全面屏手機解析度一樣,但是明顯看得出來屏幕大小不一樣,這也解釋了「不同設備像素色塊大小是不同的」。
pt :1pt=1/72 inch,用於印刷業,非常簡單易用;
dpi :Dots Per Inch,每英寸點數;詳見ppi
ppi :Pixels Per Inch,每英寸像素數;數值越大顯示越細膩。計算式:ppi = 屏幕對角線像素數 / 屏幕對角線長度。
還是舉全面屏的例子,解析度2160*1080,屏幕大小是5.9inches,勾股定理可以得到對角線像素數大約是2415,那麼ppi = 2415 / 5.99 = 403.
事實上dpi 和 ppi 一定程度上可以劃等號,都表示像素密度,計算方式完全一致,只不過使用場景不一樣。dpi中的dots點屬於列印或印刷等領域,例如drawable 文件對應的就是dpi,而ppi中的pixel屬於屏幕顯示等領域
dp/dip : Density-independent Pixels,密度無關像素 - 基於屏幕物理密度的抽象單位。1dp等於 160 dpi 屏幕上的dpx,這是 系統為「中」密度屏幕假設的基線密度。在運行時,系統 根據使用中屏幕的實際密度按需要以透明方式處理 dp 單位的任何縮放 。dp 單位轉換為屏幕像素很簡單:px = dp * (dpi / 160)。 例如,在 240 dpi 屏幕上,1 dp 等於 1.5 物理像素。在定義應用的 UI 時應始終使用 dp 單位 ,以確保在不同密度的屏幕上正常顯示 UI。
如果看完文章還是覺得很懵,那麼可以直接記住: 1dp單位在設備屏幕上總是等於1/160 inch。
sp :Scale-independent Pixels ,與 dp 單位相似,也會根據用戶的字體大小偏好進行縮放。
首先我們放上源碼中對尺寸單位的轉換
可以看到,輸入值類型為dp時,返回 value * DisplayMetrics.density,到這里我們可能會發懵:嗯?不對啊,前面我們不是通過px 和 dp 的換算公式來計算的么,怎麼這里就簡簡單單乘了一個DisplayMetrics.density?不要慌,我們先看看源碼中對DisplayMetrics.density的介紹。
源碼注釋中說到「在160dpi的屏幕下,density的值為1,而在120dpi的屏幕下,density的值為0.75」,我們可以大膽的猜測一下,120dpi下的density=0.75的原因是120dpi * 1 /160dpi=0.75。實際上,也就是這么回事。我們下面會仔細的分析。
需要補充一下,通常意義上Android 屏幕的密度,指的是像素密度dpi/ppi,對應於源碼中的DisplayMetrics.densityDpi。
為什麼引入dp?
Android 引入了dp這一單位,使得不論多大屏幕,多大dpi,顯示的效果始終保持一致。
但是根據前面我們提到的px與dp的換算公式px = dp * (dpi / 160),很顯然,由於相同解析度但不同屏幕大小的設備dpi是不同的,導致px和dp的基本不存在一個固定的換算關系,為了方便屏幕適配,Android設置了6個通用的密度,換算px與dp時採取通用密度計算,而非設備實際的密度。
以下為6種通用密度,以及其最小的解析度
得到上面通用密度之後,我們換算dp與px多了一種簡便方式。前面我們提到Android將mdpi作為基準,此時1px = 1dp,又有px = dp * (dpi / 160),所以我們可以很容易的得到以下換算:
還記不記得前面源碼中的density屬性,實際上DisplayMetrics.density = dpi / 160 ,表示的就是在某個通用密度下dp與px的換算比(1dp/1px的值)
這部分其實和程序員自身已經關系不大了,畢竟參與工作之後這些都是UI人員的活兒了。不過鑒於現在我還只是一枚在校生,還是記下來以免自己遺漏吧。
建議在xhdpi中作圖
原因嘛,首先現在主流解析度是1080p,以及最近流行起來的全面屏18:9,而xhdpi對應720p,向低dpi兼容自然沒問題,即便在xxhdpi中顯示,也會有個不錯的效果。而如果以1920*1080作圖,顯然圖片素材佔用的內存很大,而且也會增大應用安裝包的大小。
只有一個原則:資源放入對應dpi的文件夾中,Android會機智的載入合適的資源。
以drawable資源為例:
我們平時開發小項目&對UI要求不高時,只使用一套xhdpi的資源就足夠了,雖然這可能會導致在hdpi及以下的手機中有些卡頓,因為xhdpi的圖片運行在hdpi及以下的手機上會比較吃內存,不過無傷大雅。
而如果不為圖片資源犯愁時(有UI人員的支持,就是任性),就可以添加所有dpi的資源。當然,重點還是要滿足ldpi:mdpi:hdpi:xhdpi:xxhdpi=3:4:6:8:12的規律。
好像說了不少廢話,哈哈,大概就這么多吧。
Ⅳ 安卓手機DPI是如何計算的安卓開發中有什麼方法可以獲得手機屏幕尺寸(英寸)
DPI和PPI是兩個不同的概念。LZ算的是PPI
ppi (pixels per inch):圖像的采樣率(在圖像中,每英寸所包含的像素數目)
dpi (dots per inch):列印解析度 (每英寸所能列印的點數,即列印精度)
ppi和dpi確實是兩個概念,但是有些事情是約定成俗的,圖片的ppi無法反映這張圖片能在沖印店得到的沖印質量,不如你去店裡試試看,你問問操作員你的圖片是72ppi會得到什麼樣的沖印質量,多數操作員會一頭霧水。在沖印店裡只用dpi,因為我們拿去的圖片必定是為了輸出成照片,對於操作人員,他要知道的就是你的圖片像素和你所需要印製的尺寸,這兩個要素構成了dpi,所以盡管不規范,對於需要沖印的圖片我們只有用dpi的大小來溝通。
Ⅳ 這一次要幫你徹底搞明白px、ppi、dot、dpi、sp、dp、pt
這一次要幫你徹底搞明白px、ppi、dot、dpi、sp、dp、pt
這是初級設計師經常弄混淆的幾個概念,下面我以「基本概念,易混淆的點,從問題入手,總結」四個方面來聊一聊 Px,ppi;dot,dpi; sp,dp;pt 那些事兒。
一、px,ppi;dot,dpi; sp,dp;pt 的基本概念
1. px:像素
1像素實際上是一個顏色點,所以又稱像素點。大量不同顏色點組成一張圖像,因此圖像的基本單位是像素px(沒有比像素更精細的單位了)。
像素主要用來表示圖像大小和顯示器解析度(如1920*1080px)。像素本身的物理尺寸不固定,所以它的物理尺寸沒有意義,有意義的是它的數量。
為什麼像素的物理尺寸不固定?
像素本身不是物理世界的單位,是一個相對單位,尺寸可大可小。在高密度的屏幕上像素會變小,顯示效果更清晰。因為「像素量px = 像素密度ppi x 屏幕尺寸in」,同樣是1英寸的屏幕,密度越大,像素越多,則單個像素的物理尺寸越小。
都是圖片相關信息,圖片體積和像素有什麼關系?
通常所說的100KB的圖片指的就是圖片的體積,首先一張圖像在存儲時,會描述每個像素點的顏色信息、位置、數量,這些描述數據就是圖像的體積,如果像素越多自然圖像體積越大。假如一張圖片都是一個顏色,圖像在保存時就會壓縮,只存一個像素點的顏色信息,這樣的圖像體積會小很多。所以,像素點越多,顏色越復雜,圖像體積越大。
為什麼我們要買高像素的相機?
日常我們所說的幾百萬像素的相機,這個幾百萬像素指的是拍攝最大像素量照片時,圖像寬高位置上像素量的乘積。如果像素量大,將來印刷或者在顯示器上查看,在1英寸上就有足夠多的像素顯示,像素密度增加,圖像也會更清晰。因此,我們更願意買高像素的相機。
總結: 像素px常用來描述圖像尺寸和顯示器解析度。
2. ppi:像素密度(pixel per inch)
1英寸屏幕上顯示的像素量,密度單位。決定圖片的物理顯示尺寸,只有涉及到顯示才有意義。值越大,顯示越細膩。
計算公式: ppi=屏幕對角線上的像素量px/對角線長度inch = √(屏幕橫向像素^2 + 屏幕縱向像素^2)/對角線長度。
為什麼說ppi決定圖片的物理尺寸?
一個手機的顯示屏在出廠時就確定了PPI的值,PPI越大,顯示越高清。圖片的物理尺寸 = PPI * Px,通常一張圖像的px確定,ppi越大,則它的物理尺寸越小。所以為什麼我們在高PPI的手機上,人眼看到的圖像比低PPI的圖形小。在設計行業,我們會針對高PPI的手機,設計更大像素的圖像也是這個道理。
日常所說的解析度有兩個概念,一個指顯示器的解析度,另一個指圖像的解析度。顯示器解析度指顯示器所能顯示的像素多少(1920px*1080px),顯示器可顯示的像素越多,畫面就越精細,因為屏幕尺寸一定,解析度越大,像素密度越大。顯示器解析度都用(1920px*1080px)這種形式表示,清晰度還需要結合屏幕尺寸計算。圖像解析度則是單位英寸中所包含的像素點數,比如photoshop 里新建畫布時設置的圖像解析度72ppi,其定義更趨近於解析度本身的定義
注意:
同一顯示屏上查看圖片,像素量越大,圖片尺寸越大。
顯示解析度一定的情況下,顯示屏越小圖像越清晰(比如MacBook),反之,顯示屏大小固定時,顯示解析度越高圖像越清晰。
對於設計師來說像素密度很重要,需要很據像素密度來切圖和適配,理解了像素密度的意義,就理解了幾倍圖之間的關系。
3. dot:墨點
印刷品的最小單位,表示一個印刷顏色點,類似px,只有相對大小,用在印刷行業。
4. dpi:列印解析度 (dot per inch)
1英寸上列印的墨點數量,密度單位,只用在印刷行業,值越大,印刷越精細。
注意:
與安卓的dp完全沒關系。
印刷行業相關的單位是dot,dpi。印刷尺寸(英寸)=列印墨點數(dot)/列印機密度(dpi)。
照片的清晰度,是由列印機解析度決定的。所以一張照片包含的像素越多(需要高像素照相機拍攝),高dpi列印機就可以列印出清晰的圖片。如果照片像素量px一定, 列印機的dpi越高, 則列印尺寸越小。(這里可設置為dot=px)
5. pt:點(印刷)
大小為1/72英寸=0.35mm,單位是英寸,是物理長度單位,大小固定,絕對單位。源於活字排版時代,photoshop里的字體單位就只這個。
公式: 1pt= (PPI / 72) px。
當photoshop中新建畫布的解析度為72ppi,由公式,則1pt=1px。當解析度為144ppi時,1pt=2px。
注意: 這里指印刷行業的pt哦!
6. pt: 點(iOS)
iOS系統開發單位,是獨立像素的意思,長度固定,不隨屏幕像素密度ppi變化而變化。
蘋果公司規定:普屏時1px=1px,而普屏的ppi=163像素/英寸,那麼pt=1/163英寸=0.16mm(固定值)。普屏1px=1px,高清屏1pt=2px。
用固定長度pt作為開發單位的好處是,這樣可以保證同一張圖片在不同設備上顯示大小一樣,因為pt值是固定的。高清屏上1pt等於更多的像素px,因為像素在高清屏上變小,所以pt還是固定的。
7. dp:長度(Android)
(Density-independent pixel) 是安卓開發用的長度單位。
根據不同的屏幕解析度,與px有不同的倍數關系。規定:1dp等於屏幕像素密度為160ppi時1px的長度,因此dp在整個系統大小是固定的。公式:1dp=(屏幕ppi/ 160)px。
1dp等於屏幕像素密度為160ppi時1px的長度,即,在mdpi時,1dp = 1px。 以mdpi為標准,這些屏幕的密度值比為: ldpi : mdpi : hdpi : xhdpi : xxhdpi = 0.75 : 1 : 1.5 : 2 : 3。android中清屏1dp=1px,高清屏1dp=1.5px,超清屏1dp=2px。
做設計時以xhdpi為模板, xhdpi條件下1dp=2px,標注長度的時候,將長度像素除以2即為dp值,這樣方便和開發溝通。
8. sp:大小(Android)
(scale-independent pixel) 安卓開發用的字體大小單位。
注意: dp和sp都是安卓開發的單位,dp是長度單位,sp是字體單位。一般情況下可認為sp=dp。
二、易混淆的點
px和dot
都是點的概念,px應用在電子顯示設備上,是顯示圖像的基本單位。dot應用在印刷行業,是列印圖片的基本單位。
ppi和dpi
ppi和dpi無關系,互不影響 。 ppi影響圖像的顯示尺寸,dpi影響圖像的列印尺寸。列印時可以讓數量上px=dot,則設計時在photoshop里設置的ppi大小,可以認為是dpi大小。
很多技術人員經常把ppi和dpi畫等號, 其實他們的物理意義不一樣,但是因為混淆的人多了,所以在電子屏幕顯示中提到的ppi和dpi我們可以認為是一樣的。
pt和dp
iOS系統的pt和Android系統的dp概念是相似的。
三、從問題入手深入理解概念
1.設計印刷品時,為什麼說在ps里設置的ppi沒有實際意義,但還是要設置呢?
首先我們要明白,列印的解析度dpi是由實際的列印機決定的,所以在ps里設置解析度根本沒有意義。但是我們可以預期列印效果,比如多大的解析度和尺寸,有了這兩個值就能確定像素量px,即,只要像素量滿足要求,就能列印出預期的效果。所以ps里設置解析度ppi是為了讓ps計算出像素量大小。
2.photoshop里,高ppi和低ppi畫布的顯示差別?
Photoshop里的顯示大小隻和圖像的像素量和顯示器解析度有關。顯示器是確定的,所以像素量越大,顯示尺寸越大。
3.photoshop里, 相同像素的圖像,高ppi圖像拖入到低ppi圖像里,高ppi的圖像變小, 為什麼?
因為拖入後,高ppi的文檔分辨變小,photoshop把圖像的像素按照ppi變小的比例變小。這樣里體現了不同ppi的圖像在photoshop里的轉換關系。
4.photoshop里,相同像素的圖像,低ppi圖像拖入高ppi圖像里,低ppi的圖像無變化,為什麼?
因為拖入後,低ppi的文檔分辨變大,photoshop把圖像的像素按照ppi變大的比例變大,這樣就超過了畫布尺寸,photoshop按照置入圖片的原理顯示,即按最大邊匹配。
5.使用軟體的方式,增加圖像的像素px,或者提高圖像的像素密度ppi,對圖像有什麼影響?
軟體增加圖片像素,圖片會變模糊,因為增加的不是有效像素,所謂高清圖是指包含有效像素多的圖片。顯示清晰度由顯示器本身決定,圖片的ppi沒有意義。
6.100*100px的圖片,ps改變它的ppi,會怎樣?
像素是確定的,即不會影響顯示,也不會影響印刷。
四、總結
1.手機設計稿
因為手機屏幕的ppi和英寸確定,那麼像素可計算出來,即px確定,只需設置ps的畫布像素px相同就可以了,ps里設置的ppi對手機設計稿而言並沒有什麼意義,可以隨便設置;手機只關注圖片的像素夠不夠,因為是按照手機1:1的像素設計。所以,適配高ppi手機的設計稿,修改ps的ppi是沒有用的,而應該按照高ppi的像素修改設計稿。
2.列印設計稿
列印尺寸和列印解析度300dpi確定, 但ps以px為單位,由公式dot=英寸*dpi,px=英寸*ppi,英寸相同, dpi=ppi=300,那麼數量上可以dot=px。ps的英寸和ppi確定, px也確定,但不能直接得出px數量,但是ps可直接設置厘米cm, 那就只需要設置寬高的厘米和解析度300ppi=118.11像素/厘米,就可以間接設置所需的像素量,這就能保證300dpi清晰度和列印尺寸。(設置300dpi時ps會自動轉化為118.11像素/厘米)