如何在Core Graphic中描绘一条路径?

时间:2012-01-20 13:09:39

标签: iphone core-graphics

我试图通过编写下面的代码行来描绘我的路径,但它没有被绘制。请帮我看看这个问题是什么。

void draw1PxStroke(CGContextRef context,CGColorRef color,CGMutablePathRef arcPath) {
    CGContextSaveGState(context);
    CGContextSetLineCap(context, kCGLineCapSquare);
    CGContextSetStrokeColorWithColor(context, color);
    CGContextSetLineWidth(context, 3.0);
    CGContextAddPath(context, arcPath);
    CGContextClip(context); 
    CGContextStrokePath(context);
    CGContextRestoreGState(context);                
}

2 个答案:

答案 0 :(得分:4)

问题可能是你对CGContextClip的调用,其副作用是将上下文的当前路径重置为空路径。

答案 1 :(得分:0)

你可以这样做:

CGContextBeginPath(context);
    CGContextMoveToPoint(context, rect.origin.x, rect.origin.y);
    CGContextAddLineToPoint(context, rect.origin.x + rect.size.width, rect.origin.y);
    CGContextAddLineToPoint(context, rect.origin.x + rect.size.width, rect.origin.y + rect.size.height);
    CGContextAddLineToPoint(context, rect.origin.x, rect.origin.y + rect.size.height);
    CGContextAddLineToPoint(context, rect.origin.x, rect.origin.y);
    CGContextStrokePath(context);

这将显示一个正方形