有没有办法故意关闭UIView的所有抗锯齿?

时间:2016-05-12 16:31:57

标签: ios uiview core-graphics

我正在尝试制作一种看起来很旧的应用程序,因此我希望在没有抗锯齿的情况下渲染我的UIView。换句话说,我希望我的视图被像素化,尤其是view.layer.cornerRadius,因为在这种情况下,我可以使用AutoLayout布局我的视图。

这将比为不同的iPhone尺寸绘制不同的像素艺术更容易。此外,如果我在调整视图大小时绘制像素艺术,我将不得不创建一个新的像素艺术,因为缩放图像会扭曲像素艺术。

我发现的唯一的事情是view.layer.allowsEdgeAntialiasing,默认情况下已经设置为false。我也在考虑使用Core Graphic的BeizerPaths绘制像素化的阴影和角落,这是实现我想要的可行方式吗?

1 个答案:

答案 0 :(得分:1)

你可以转到Core Graphics CGContext和朋友,你可以通过CGContextSetShouldAntialias(context,false)专门告诉图形上下文关闭消除锯齿;

这是两个小屏幕抓取,一个没有锯齿,另一个有锯齿。

First Image With No Jaggies

Second Image WIth Jaggies