iOS UIImage生成高性能圆角图片

来源:互联网 发布:java编写工具 编辑:程序博客网 时间:2024/06/06 18:20
- (void)imageWihtSize:(CGSize)size radius:(CGFloat)radius backColor:(UIColor *)backColor completion:(void(^)(UIImage *image))completion{    // 异步绘制裁切    dispatch_async(dispatch_get_global_queue(0, 0), ^{        // 利用绘图建立上下文        UIGraphicsBeginImageContextWithOptions(size, true, 0);        CGRect rect = CGRectMake(0, 0, size.width, size.height);        // 填充颜色        [backColor setFill];        UIRectFill(rect);        // 贝塞尔裁切        UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:rect cornerRadius:radius];        [path addClip];        [self drawInRect:rect];        // 获取结果        UIImage *resultImage = UIGraphicsGetImageFromCurrentImageContext();        // 关闭上下文        UIGraphicsEndImageContext();        // 主队列回调        dispatch_async(dispatch_get_main_queue(), ^{            completion(resultImage);        });    });}
原创粉丝点击