UIbezierpath在可缩放视图中

我在可缩放的UIView(pdf阅读器的绘图层)中绘制了bezierpaths。 当我放大文档UIView也放大,但是所有的图纸和线条看起来更像素化。 有没有办法渲染这些path没有太多的像素化? 它假设贝塞尔path是基于vector的…

提前致谢!

你是正确的,UIBezierPath是基于vector的。 但是,在绘制视图的path时,它将使用视图图层上的contentScale属性来确定绘制时要使用的细节数量。

你可以做的是当用户完成缩放时,将内容缩放设置为正确的数量。

drawingView.layer.contentScale = [[UIScreen mainScreen] scale] * zoomAmount;

您可以使用CAShapeLayer 。 只需创buildCAShapeLayer,添加CGPath并添加一个图层作为子图层到您的UIView图层