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