gpt4 book ai didi

iOS,绘制填充矩形的径向渐变

转载 作者:可可西里 更新时间:2023-11-01 03:56:14 25 4
gpt4 key购买 nike

下面的代码绘制了一个完美的椭圆径向渐变,但没有填充它 View 的角。我如何让它超出椭圆的边缘?记录的选项是 kCGGradientDrawsAfterEndLocation,但我认为它在 ios 中不可用。

- (void)drawRect:(CGRect)rect
{
CGFloat colors [] = {
0.2, 0.2, 0.2, 1.0,
0.0, 0.0, 0.0, 1.0
};
CGColorSpaceRef baseSpace = CGColorSpaceCreateDeviceRGB();
CGGradientRef gradient = CGGradientCreateWithColorComponents(baseSpace, colors, NULL, 2);
CGColorSpaceRelease(baseSpace), baseSpace = NULL;
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSaveGState(context);
CGContextAddEllipseInRect(context, rect);
CGContextClip(context);
CGContextDrawRadialGradient(context, gradient, self.center, 0, self.center, self.frame.size.width, kCGGradientDrawsAfterEndLocation);
CGGradientRelease(gradient), gradient = NULL;
CGContextRestoreGState(context);
}

enter image description here

最佳答案

您已将绘图剪裁成椭圆。这会停止在裁剪区域外绘制渐变。删除添加椭圆的行并剪裁上下文。

关于iOS,绘制填充矩形的径向渐变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14169980/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com