如果所有的iPad都具有相同的768x1024屏幕尺寸,那么"比例尺是多少?对于?

时间:2015-12-06 14:27:50

标签: ios ipad graphics

模拟器说所有的iPad都有相同的尺寸(768 x 1024)。 这是对的吗?

由于设备'尺寸是相同的,是否可以放置100x100矩形并期望它看起来相同?或者由于规模不同,它看起来不一样吗?

请向我解释一下使用的比例:我是否需要调整我的矩形以计算比例?

1 个答案:

答案 0 :(得分:5)

iOS使用抽象显示比例:点。一点是1/72英寸。

迷你iPad作弊。点数实际上小于迷你的1/72英寸,但为了讨论的目的,我们将忽略它。 iPad mini仍然使用点进行渲染。但结果图像较小。

iOS也有缩放属性。 scale属性表示一个点中有多少个物理像素。 Retina iPad的刻度为2.因此,如果您在视网膜iPad上绘制1点1点矩形,它实际上将使用2 x 2屏幕像素绘制。忽略迷你,矩形将在视网膜和非视网膜设备上显示相同的大小。每个点将在非视网膜设备上呈现为1像素,在视网膜设备上呈现2x2或4像素。

视网膜设备获得优势的地方有抗锯齿曲线,对角线和连续色调图像,如渐变和全彩色图片。这些都在视网膜和非视网膜设备上以相同的比例呈现内容,但视网膜设备上有更多细节。抗锯齿在像素级别完成,因此对角线和曲线看起来更平滑,更自然。这为文本带来了很大的好处,在视网膜设备上看起来更清晰,更好。文本在视网膜和非视网膜设备上的显示尺寸相同,但由于视网膜设备的像素数是其4倍,因此能够以更高的分辨率渲染文本。

(照片不会神奇地在视网膜设备上获得更高的分辨率。你应该提供非视网膜和视网膜版本的图像,并用“@ 2x”后缀命名视网膜图像。)所以你可能有一个图像“flower.png”。你也提供“flower@2x.png”。在您的代码中,您将使用代码

UIImage * anImage = [UIImage imageWithName:“flower”];

(如果您没有指定,则系统假设后缀为“.png”。)

在视网膜设备上,系统将检查文件“flower@2x.png”。如果找到它,它将使用它,并假设它在每个维度中包含2倍于非视网膜图像的像素。如果找不到视网膜图像,它将使用非视网膜图像并将每个图像像素保存为4个屏幕像素,从而创建一个不那么清晰和细致的图像。对于非视网膜设备也是如此。这些设备只是忽略图像的@ 2x版本并加载常规图像。

iPhone

在iPhone世界中还有iPhone 6 plus,其屏幕每点3x3像素。如果您支持iPhone和iPad,那么您需要以非视网膜分辨率,@ 2x和@ 3x提供图像。请注意,如果您只使用iPhone,则不再需要提供非视网膜图像,因为能够运行最后几个iOS版本的所有iPhone都是视网膜设备。 iPhone 3Gs是最后一款非视网膜iPhone。它只能运行iOS< = iOS 6,大多数开发人员不再支持。