从历史上看,在任何计算之后,只需简单地执行一个 floor()
,以确保所有坐标、高度和宽度与像素边界正确对齐。
但是,这显然在视网膜显示器上不再有效,因为 0.5 点现在完全有效。
编码人员现在应该如何编码像素完美的东西,使他们的代码正确支持标准和视网膜显示器?
最佳答案
Convert the rect to backing-aligned coordinates .您可能会在 View 中执行此操作,但是 windows can do it和 screens can do it
您可能还需要转换回来,因为 the release notes建议后备坐标空间以像素为单位,因此这些空间在 Retina 显示器上显然是两倍大。如果我有一个,我会测试它。如果在 View 空间中使用后备坐标时所有东西看起来都大两倍,这意味着您确实需要将它们转换回 View 坐标。
关于objective-c - 在视网膜显示器上用 Cocoa 进行像素完美的绘图——只做 floor() 将不再有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12235583/