2

如何在视图内的封闭路径上绘制 CGGradient?我试图绘制渐变,但是,它是在视图本身上绘制的,而不是仅在我在视图内填充的 CGPath 内。我只想在填充路径上绘制渐变,而不是在视图本身上。

4

1 回答 1

3
  1. 保存上下文的状态。
  2. 将路径设置为上下文中的剪辑区域。
  3. 绘制渐变。
  4. 恢复上下文的状态。

例子:

CGContextSaveGState(context);
CGContextAddPath(context, myPath);
CGContextClip(context);
CGContextDrawLinearGradient(context, gradient, startPoint, endPoint, kNilOptions);
CGContextRestoreGState(context);
于 2012-07-30T07:03:25.343 回答