2012.06.26 08:39

從 new iPad 看視網膜螢幕的特性、解析度技術與應用上的問題

ADVERTISEMENT

Resolution Independence:解析度自主

新iPad問世前,筆者曾經天真的以為導入Retina Display只是個謠言,因為缺乏對應的圖像升頻技術,必定會造成App開發市場的一場災厄。後來事實證明了自己的判斷有多麼幼稚,科技業果然是鴨霸的,市場決定需求,只要面板做得出來,後端的處理就交給軟體開發者及內容供應商自個兒去煩惱就好。

事實上,不管是桌機螢幕或行動裝置,因為解析度各自為政而造成的問題早就不勝枚舉。君不見Android市場開發者,微軟也引以為鑑地替Windows 8的解析度應付能力做了背書,而賣硬體的Apple則是更早就注意到了這個癥結。

自主技術行之有年

對於點陣物件來說,縮小或放大都會產生失真,倍數一大就會很難彌補。針對文字,解析度帶來的影響是比較小的,因為它的線條簡單、顏色單純,各家作業系統在十幾年前就已經有成熟的文字顯示技術。比如「marlett」(微軟視窗最大最小化按鈕所使用的字體)、「TrueType」等等,配合作業系統本身的渲染方式,可以無限放大點陣字型而不使其失真,倚天中文也有類似的平滑技術,來消弭點陣字放大後可能產生的鋸齒。

ADVERTISEMENT

不過,這些都還不能算是Resolution Independence,因為除了文字之外,還有圖形要處理。即使到了現在,該應用也尚未被完整的實作出來,而是透過多種不同的圖形演算理論來拼湊整合。比如微軟在Vista導入的WPF圖形化設計框架,以及Mac OS X沿用已久的Quartz顯示引擎等,都提供了或多或少的解析度自主技術。

尺寸以不變應萬變

Resolution Independence的核心精神,是讓物件的顯示尺寸不會受外在解析度影響而變形。以前文提到的App圖示為例,當App被放在新iPad上面時,就應該自動選擇以144 x 144的解析度來顯示,而不是固守單一畫素來應付各種不同的解析度平台。

怎麼放大顯示?作業系統的顯示模組會以縮放倍數(Scale Factor)來決定圖形的目標解析度。經過歷史沿革,業界公認的的標準像素密度是72ppi,以72ppi來顯示圖形,倍數就是1.0;以144ppi的像素密度來顯示圖形,倍數就是2.0,這樣才能達到與72ppi同樣的尺寸。

ADVERTISEMENT

假如今天在72ppi的螢幕上,有一個物件的解析度是100 x 100,換成在144ppi的螢幕顯示,就得是200 x 200。如此一來,要應付不同解析度的面板就有個依據了,只要計算出縮放倍數,要達成相同、或者是近似的顯示尺寸並非難事。

然而,當縮放倍數較小時,還能夠以插補點的方式來填滿圖像放大後產生的像素空隙,但隨著倍數的增長,再厲害的演算法也無法挽救像素的不足。開發者自己最好就要準備幾種不同解析度的素材來應付了,這也是為什麼在設計Mac OS X或iOS上的App時,1個圖示會包含好幾個不同尺寸檔案的原因之一。

話說回來,我們可以看到new iPad上頭的圖示、系統文字、操作介面看起來都還是很精細,而且大小跟舊iPad幾乎相同。但是當你自己放了一張低畫素的照片到相簿裡時,並不會有魔術般的升頻效果,即使秀圖App經過特製,要達到與原生解析度輸出的品質標準仍然非常困難。

ADVERTISEMENT

▲不同解析度的螢幕得套用不同的Scale Factor,才能顯示出相同尺寸的圖像,Windows 8同樣也對解析度問題提出了不少對策。

ADVERTISEMENT

▲微軟提出的「畫素密度甜蜜點」分析圖。若將新iPad拿來比較,恰巧會落在及格邊緣,畫素再高就無意義了。

new iPad 對圖片、影片、遊戲、電子書、網頁有什麼影響?)

ADVERTISEMENT