好吧,我有一个UIView
显示CGPath
相当宽的。它可以UIScrollView
水平滚动。现在,我使用 a 来查看视图CATiledLayer
,因为它的宽度超过 1024 像素。
所以我的问题是:这有效吗?
- (void) drawRect:(CGRect)rect {
CGContextRef g = UIGraphicsGetCurrentContext();
CGContextAddPath(g,path);
CGContextSetStrokeColor(g,color);
CGContextDrawPath(g,kCGPathStroke);
}
本质上,每次绘制图层中的图块时,我都会绘制整个路径。有谁知道这是否是一个坏主意,或者 CGContext 是否相对聪明地只绘制剪切矩形内的路径部分?
路径主要是这样设置的,我可以将它分成大小和形状与瓷砖相似的块,但它需要我做更多的工作,需要在路径之间有一些冗余(对于形状跨越瓷砖边界),并且还需要一些计算来找到要绘制的路径。
朝这个方向发展是否值得,还是 CGPath 已经相对较快地绘制?