7

我想用线性 CGGradient 填充我通过 Core Graphics 绘制的多边形形状。CGContextDrawLinearGradient 函数绘制从一个点到另一个点的渐变,但它会填充整个视图。如何仅在我绘制的多边形形状内显示渐变?

4

1 回答 1

18

您可以构建所需形状的 CGMutablePath,然后使用它剪辑到要显示的区域,例如...

// Construct yourClipPath

CGContextAddPath(yourContext, yourClipPath);
CGContextClosePath(yourContext);
CGContextClip(yourContext);

// Draw Your Gradient
于 2009-06-22T08:10:48.687 回答