Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

zh:rhino:mac:retina [2016/12/01]
zh:rhino:mac:retina [2020/08/14] (current)
Line 1: Line 1:
 +====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)**。