導航:首頁 > 操作系統 > android圖片像素密度

android圖片像素密度

發布時間:2023-08-21 23:01:58

『壹』 android中如何生成不同像素密度的圖片

生成不同像素密度的圖片資源可以使用一些開源項目,在github上就有一些專門來生成圖像資源的工具,這里我們介紹一個工具,你可以在這個地址下去下載使用https://github.com/asystat/Final-Android-Resizer。這個工具打開後如下圖所示:

這個工具的使用方法很簡單,你只要將圖片拖動到該工具中,該工具就會自動根據你拖入的圖片來生成不同版本的圖片。其中設置標准版本表示你當前拖入的圖片為什麼版本的圖片。工具會以這個版本為基礎來進行計算生成不同像素密度的圖像資源。

這些都是Android的基礎知識,推薦你可以在一個叫做秒秒學的網站中查找相關資料。

『貳』 android app界面設計規范(dpi,dp,px等)

PPI(Pixels per inch):每英寸所擁有的像素數,即像素密度。
DPI(dots per inch):即每英寸上,所能印刷的網點數,一般稱為像素密度。ppi計算公式:ppi = 屏幕對角線像素數/屏幕對角線英寸數,通過勾股定理計算屏幕對角線像素數。
Screen Size(屏幕尺寸):手機屏幕尺寸大小,如3英寸、4英寸、4.3英寸、5.7英寸,指的是對角線的長度。
DIP(device independent pixel):即dip/dp,設備獨立像素。 1px = 1dp density(由dpi決定)
Resolution(解析度):指手機屏幕垂直和水平方向上的像素個數。eg解析度480
800,指該設備垂直方向有800個像素點,水平方向有480個像素點。
px(Pixel像素):相同像素的ui,在不同解析度的設備上效果不同。在小解析度設備上會放大導致失真,大解析度上被縮小。

Android Design里把主流設備的 dpi 歸成了四個檔次: 120 dpi、160 dpi、240 dpi、320 dpi ,具體見如下表格。
實際開發當中,我們經常需要對這幾個尺寸進行相互轉換(比如先在某個解析度下完成設計,然後縮放到其他尺寸微調後輸出),一般按照 dpi 之間的比例即 2:1.5:1:0.75 來給界面中的元素來進行尺寸定義。
也就是說如果以 160 dpi 作為基準的話,只要尺寸的 DP 是 4 的公倍數,XHDPI 下乘以 2,HDPI 下乘以 1.5,LDPI 下乘以 0.75 即可滿足所有尺寸下都是整數 pixel 。但假設以 240 dpi 作為標准,那需要 DP 是 3 的公倍數,XHDPI 下乘以 1.333,MDPI 下乘以 0.666 ,LDPI 下除以 2。而以 LDPI 和 XHDPI 為基準就更復雜了。同時第一款Android設備(HTC的T-Mobile G1)是屬於160dpi的。鑒於以上各種原因, 標准dpi=160

谷歌官方對dp的解釋如下:
A virtual pixel unit that you should use when defining UI layout, to express layout dimensions or position in a density-independent way.
The density-independent pixel is equivalent to one physical pixel on a 160 dpi screen, which is the baseline density assumed by the system for a "medium" density screen. At runtime, the system transparently handles any scaling of the dp units, as necessary, based on the actual density of the screen in use. The conversion of dp units to screen pixels is simple: px = dp * (dpi / 160). For example, on a 240 dpi screen, 1 dp equals 1.5 physical pixels. You should always use dp units when defining your application's UI, to ensure proper display of your UI on screens with different densities.

簡單來說,以160dpi的設備為准,該設備上1dp = 1px;如果屏幕密度大,1dip代表的px就多,比如在320dpi的屏幕上,1dip=2px(即1dp代表2個像素)。在app開發時,最好用dp來做界面的布局,以保證適配不同屏幕密度的手機。

dp和px的換算公式:

我的理解,該公式表示px的數值等於dp的數值*(設備dpi/160)
注意,px、dp是單位,但density沒單位。

applyDimension的源碼如下,可參考:

android的尺寸眾多,建議使用解析度為 720x1280 的尺寸設計。這個尺寸 720x1280中顯示完美,在 1080x1920 中看起來也比較清晰;切圖後的圖片文件大小也適中,應用的內存消耗也不會過高。

app啟動圖標為48*48dp,對應各dpi設備,圖像資源像素如下:

| mdpi | hdpi | xhdpi | xxhdpi |
| ---:| ---: | ---:| ---:| ---:|
|48 48px|72 72px|94 96px|144px 144px|

操作欄圖標為32*32dp,對應各dpi設備,圖像資源像素如下:其中圖形區域尺寸是24*24dp,可參考平時ui切圖會有部分留白。

| mdpi | hdpi | xhdpi | xxhdpi |
| ---:| ---: | ---:| ---:| ---:|
|32 32px|48 48px|64 64px|96px 96px|

通知欄圖標為24*24dp,對應各dpi設備,圖標像素如下:

| mdpi | hdpi | xhdpi | xxhdpi |
| ---:| ---: | ---:| ---:| ---:|
|24 24px|36 36px|48 48px|72px 72px|

某些場景需要用到小圖標,大小應當是16*16dp,其中圖形區域尺寸12*12dp。

| mdpi | hdpi | xhdpi | xxhdpi |
| ---:| ---: | ---:| ---:| ---:|
|16 16px|24 24px|32 32px|48px 48px|

『叄』 Android設備的屏幕像素密度和720P,1080P的關系是怎麼樣的

【它們的關系】

  1. 像素密度與解析度(P)像素密度=√{(長度像素數^2+寬度像素數^2)}/ 屏幕尺寸

  2. 舉例:

小米官方數據顯示MI3的屏幕像素密度,即PPI約為441。
MI3解析度:1920x1080 屏幕尺寸:5英寸
√1920²+1080²/5 (根號裡面是1920²x1080²)
=√3686400+1166400/5
=√4852800/5
≈440.58
≈441

【兩者間的區別】

  1. 像素密度:即每英寸屏幕所擁有的像素數,像素密度越大,顯示畫面細節就越豐富。

  2. 逐行掃描:720P、1080P都是是一種視頻顯示格式,外語字母P意為逐行掃描,它是美國電影電視工程師協會(SMPTE)制定的最高等級高清數字電視的格式標准,幀率通常為60Hz,可標示在p後面,如1080p30,意思是30Hz。常見的幀率還有24、25、30。並非HDMI就一定有1080p的輸出,畫面不一定要能支持1920×1080才能算是1080p輸出,只要水平掃描線超過1080條就能稱之為1080p,水平像素點並沒有嚴格的規范,Full HD才是規范垂直與水平掃描像素的標准,1080p僅規范垂直像素點(等同水平掃描線)。

『肆』 android關於幾個drawable文件夾的區別

mdpi、hdpi、xdpi、xxdpi
其實之前還有個ldpi,但是隨著移動設備配置的不斷升級,這個像素密度的設備已經很罕見了,所在現在適配時不需考慮。
mdpi、hdpi、xdpi、xxdpi用來修飾Android中的drawable文件夾及values文件夾,用來區分不同像素密度下的圖片和dimen值。
那麼如何區分呢?Google官方指定按照下列標准進行區分:

名稱
像素密度范圍

mdpi 120dpi~160dpi
hdpi 160dpi~240dpi
xhdpi 240dpi~320dpi
xxhdpi 320dpi~480dpi
xxxhdpi 480dpi~640dpi
在進行開發的時候,我們需要把合適大小的圖片放在合適的文件夾裡面。下面以圖標設計為例進行介紹。

在設計圖標時,對於五種主流的像素密度(MDPI、HDPI、XHDPI、XXHDPI 和 XXXHDPI)應按照 2:3:4:6:8 的比例進行縮放。例如,一個啟動圖標的尺寸為48x48 dp,這表示在 MDPI 的屏幕上其實際尺寸應為 48x48 px,在 HDPI 的屏幕上其實際大小是 MDPI 的 1.5 倍 (72x72 px),在 XDPI 的屏幕上其實際大小是 MDPI 的 2 倍 (96x96 px),依此類推。
雖然 Android 也支持低像素密度 (LDPI) 的屏幕,但無需為此費神,系統會自動將 HDPI 尺寸的圖標縮小到 1/2 進行匹配。
下圖為圖標的各個屏幕密度的對應尺寸

屏幕密度
圖標尺寸

mdpi 48x48px
hdpi 72x72px
xhdpi 96x96px
xxhdpi 144x144px
xxxhdpi 192x192px

閱讀全文

與android圖片像素密度相關的資料

熱點內容
計算機專業學51單片機 瀏覽:206
程序員不接受反駁 瀏覽:294
微軟自帶的壓縮軟體 瀏覽:286
中國玩家在日本伺服器做什麼 瀏覽:48
12864和單片機 瀏覽:898
25匹空調壓縮機 瀏覽:649
adkandroid下載 瀏覽:308
如何在蘋果電腦上裝python 瀏覽:327
哪個app的跑步訓練內容最豐富 瀏覽:583
廣訊通怎麼刪除文件夾 瀏覽:206
解壓的視頻化妝品 瀏覽:674
易語言新進程監視源碼 瀏覽:941
turbo碼解碼演算法 瀏覽:956
stc11f16xe單片機 瀏覽:282
linuxupdate命令行 瀏覽:578
pdf轉化成wps 瀏覽:765
php拋出錯誤 瀏覽:159
買車看車用什麼app 瀏覽:656
dos怎麼清除屏幕上的命令 瀏覽:813
壓縮褲冬天 瀏覽:449