UIBezierPath圆边?

我画了一些线条,我注意到,当边缘达到一定的angular度,它会产生一个像这样的尖锐的边缘: 尖的边缘

我想要它画什么: 圆的边缘

我该怎么做呢? 我已经浏览了文件,但我似乎没有find任何即时消息寻找。 或者有没有办法把这个自动边缘生成关掉?

UIBezierPath有一个名为lineJoinStyle的属性。 将其设置为kCGLineJoinRound ,它将根据需要进行绘制。

 UIBezierPath *myPath = ... myPath.lineJoinStyle = kCGLineJoinRound; 

在绘制path之前,使用CGContextSetLineJoin将绘图上下文的连接参数设置为kCGLineJoinRound 。 这在“ Quartz 2D Programming Guide”中有描述 。

如果你正在绘制一个UIBezierPath,你也可以设置path的lineJoinStyle ,这可能会更容易一些。

在UIBezierPath上的kCGLineJoinRound属性可以在Swift中被调用:

 myPath.lineJoinStyle = .round