詳解 iPhone 6 Plus 的奇葩分辨率

2014-09-12 richardbaoiphone

@richardbao .net

 

現現在 iPhone 在尺寸上終於「百花齊放」了,有點向 Android 世界發展的趨勢。至日前 Apple 發佈 iPhone 6 和 iPhone 6 Plus 時,iPhone 家族有了以下五種不一樣的屏幕:設計

 

首先是以實際物理尺寸爲準的相對大小,以下圖綠色所示:blog

 

 

然而因爲屏幕的實際像素密度(ppi)不一樣,若是按實際像素的數量來比較的話,獲得的是下面的相對大小,如藍色所示:圖片

 

 

能夠看到,第一代屏幕由於是非 Retina 的,雖然物理尺寸和 iPhone 4/4S 同樣,但像素數量少得可憐。而最新發布的 iPhone 6 Plus 雖然設備尺寸比 iPhone 6 只是稍大,但實際像素卻多了許多,不愧是 401ppi 的屏幕。ip

 

可是,這個 401ppi 的屏幕和以前的 326ppi 的 Retina 屏幕相比,大了很多,但又不夠大。在 Retina 繪圖係數上顯得很尷尬。開發

 

好比說,咱們在這個屏幕上繼續使用 @2x 係數的 Retina,那麼一樣的一張照片應該顯示以下:get

 

 

此時,1080px 對應的邏輯像素是 540 pt @2x。當咱們將其調整回真機物理尺寸的時候,會發現 iPhone 6 Plus 上的圖反而變小了:class

 

 

這樣會致使一個尷尬的結果:用戶拿着一個大屏手機,字卻反而比小屏幕手機更小,更看不清楚。所以,@2x 不合適。程序

 

若是像以前傳言的那樣,改用 @3x 係數,那麼一樣的照片確定顯示得要大多了:

 

 

這回看是看清楚了,但邏輯像素則成了 360pt @3x,比 iPhone 6 的 375pt @2x 還要少。另外一個尷尬的局面產生:用戶拿着一個大屏的 iphone,看到的內容反而少了。

 

 

因而,@2x 和 @3x 都不太行得通。蘋果確定也這麼糾結過。若是真的要等比例,應該是 @2.46x,但這個數字太坑了,不管是設計師仍是開發人員都會瘋掉:

 

 

因而,蘋果給出了一個實在奇葩的方案(雖然想一想也合理):不是現有的屏幕物理分辨率明顯超過了 @2x 但還達不到 @3x 的水平麼?那咱們歪歪一個知足 @3x 的屏幕總能夠吧?

 

對的,歪歪。

 

程序在 iPhone 6 Plus 上運行的時候,iOS 會騙它說,你運行在一個超大的 @3x Retina 顯示屏上,物理分辨率高達 1242 x 2208,邏輯分辨率是 414 x 736,二者都比 iPhone 6 要大。而後做爲設計師和開發人員,也跟着一塊兒歪歪。設計師畫圖的時候要把屏幕當成 1242 x 2208 來畫圖(並且要提供 @3x 的高清圖),開發人員也按照 414 x 736 的邏輯分辨率來寫程序。

 

但借來的總要還的。等我們歪歪結束了之後,iOS 拿到這個假大的 UI 繪製結果,實時地再縮小到實際的 1080 x 1920 分辨率。因而,用戶在 iPhone 6 Plus 的屏幕上看到的永遠是被縮小了的圖像:

 

 

可是,這麼作使得設計和開發的過程大大簡化,且最後的實際縮放係數 @2.62x 很是接近理想的 @2.46x,使得一樣的素材在真機上看起來尺寸也很是合理:

 

 

從左至右,一樣大小的圖片看起來物理尺寸差很少大,邏輯像素數量也逐漸增多(即能顯示的內容愈來愈多)。

 

這麼作的壞處固然也是有的,尤爲對於設計師或者處女座的人,由於圖像永遠會被縮小 13%,因而除非 iOS 極可能永遠沒法精確地畫出 1px 寬的線條了。。。

相關文章
相關標籤/搜索