例如我需要一张白色但是中间有一个透明的圆的图片来覆盖在图片上处理圆角头像的问题,该怎么绘制才能得出这张图片呢,我并不想直接把头像绘制成圆形。
例如我需要一张白色但是中间有一个透明的圆的图片来覆盖在图片上处理圆角头像的问题,该怎么绘制才能得出这张图片呢,我并不想直接把头像绘制成圆形。
楼主的答案不错,我再提供一个思路。贝塞尔曲线。
贝塞尔曲线 顺指针 是fill,逆时针是clip。
所以可以将中间你需要的地方加一个逆时针的path。这个的好处是,你中间扣个啥都可以实现了!五角星,还是圆角矩形。
UIBezierPath *path = [UIBezierPath bezierPathWithRect:self.bounds];
UIBezierPath *clipPath = [[UIBezierPath bezierPathWithRect:clipFrame] bezierPathByReversingPath];
[path appendPath:clipPath];
CGContextAddPath(context, path.CGPath);
CGContextFillPath(context);
2 回答1.1k 阅读
1 回答1.2k 阅读✓ 已解决
1 回答2.8k 阅读
1 回答1.4k 阅读
1.7k 阅读
1 回答970 阅读
1 回答803 阅读
自己来答吧,用CGContextClearRect这个函数就妥妥解决了,哈哈