====Retina螢幕以及Rhino for Mac==== 2012年六月,蘋果宣布MacBook將使用Retina螢幕,蘋果筆記型電腦將會有很高的解析度。然而,這樣的轉換需要更多軟體開發人員的努力來適應這種新的顯示科技。 很長一段時間,所有的蘋果螢幕具有每英吋約100像素 (PPI)。當設計對話框的時候,軟體開發人員通常以像素為單位來設定文字區域還有按鈕的高與寬,也用同樣的方式來設定對話框在螢幕上的位置。新的Retina螢幕有220PPI,所以以前的設計方式已經不適合使用。 蘋果本身下了很多工夫以完成無縫過渡的階段。在macOS系統,蘋果使用"點"的概念來測量螢幕的尺寸,而不是像素。對於舊型非Retina顯示,蘋果決定像素與點為相同大小,所以之前螢幕顯示的編排仍然有效。 但是在新的Retina螢幕上,蘋果表示1點等於2個像素,所以每個方向算起來一個像素是一點的兩倍。因此當軟體開發師做一個18x90(點)的對話框按鈕,在非Retina螢幕上還是18x90像素,但在Retina螢幕上就變成了36x180像素。因為Retina螢幕的解析度是像素的兩倍,這樣的按鈕在這兩種不同螢幕上有看起來是相同的尺寸,大概是比一吋寬還要小一些。 蘋果更新了所有文字與繪圖的控制方法,所以Retina螢幕上的按鈕跟文字都會是兩倍像素,所有應用程式都能如常運作。但繪圖軟體如Rhino就需要一些改變,以便利用新的Retina顯示器的優勢。 如之前提到的,macOS現在通常用點來繪圖。但Rhino繪製的是模型的視圖,需要以像素為單位。所以Rhino需要macOS來做判斷,並且在繪圖時使用適當的像素值。如果在Retina螢幕 (比如2012年MacBook Air)還有一般螢幕上比較一個Rhino模型,就可以看出在Retina螢幕上的影像看起來更銳利更清晰。當使用Retina螢幕時,Rhino制定的像素大概是以往的4倍。 ===螢幕解析度應該被設為最佳 (Retina)=== 2012年15吋Retina MacBook Pro電腦是2880x1800像素。在系統選項System Preferences >顯示Displays裡,蘋果提供縮放解析度的選項,改變這個項目對Mac版Rhino不是一個好主意。如果看到"縮放解析度會影響性能",對於Mac版的Rhino來說是這樣沒錯。 {{:rhino:mac:display_resolution_preference.png |}} 這個面板讓你可以用點為單位改變顯示器的尺寸,而不是以像素為單位。很顯然的你無法改變螢幕的像素。蘋果在這個控制面板上的呈現會令人有點疑惑,如果你以為螢幕解析度是以像素為單位,結果其實是點。 為了實際測量這兩種設定之間的不同處,我們設定Rhino以像素回報實際的作業視窗的尺寸。我們開啟Rhino並且將繪圖視窗設為全螢幕還有一個單一的作業視窗。以下是使用三種系統設定時Rhino的回報: ^ 解析度 ^ 顯示為Looks like ^ 以點為單位子視圖viewport in points ^ 以像素為單位子視圖viewport in pixels ^ 像素值pixel count ^ |Best (Retina) | 1440 X 900 | 1438 X 801 | 2876 X 1602 | 4,607,352 | | | 1680 x 1050 | 1678 X 951 | 3356 X 1902 | 6,383,112 | |More Space | 1920 x 1200 | 1918 x 1101 | 3836 x 2202 | 8,446,872 | 要記得,Retina螢幕裡實際上的像素值是無法改變的。最佳Retina設定,作業視窗的像素跟實際上顯示的像素值一樣,所以作業視窗的內容是直接劃出並由螢幕顯示。 在其他兩個案例哩,macOS會建立一個不在螢幕上的bitmap檔,比實際顯示還要大,Rhino實際上是畫在那個bitmap裡。 macOS縮放那張bitmap直到與實際顯示尺寸相同,最後在螢幕上畫出來。 在1920x1200這個選項裡,在Retina最佳顯示情況下,Rhino必須以兩倍像素來繪圖,macOS顯示時會將Rhino繪圖的匯出縮至實際螢幕的大小。 既然Rhino一定會注意到實際顯示尺寸,所以要保持解析度一直設在**最佳顯示Best for display**。如果在**縮放Scaled**選項選取的情況下,設定為**最佳Best(Retina)**。