美文网首页iOS图与文
Quartz2D之图片裁切

Quartz2D之图片裁切

作者: Coder007 | 来源:发表于2016-06-23 16:35 被阅读21次

    图片裁剪

    • 在开发中有的时候是需要裁剪图片的,比如说头像,裁剪成圆形,有的时候还有边框
    UIImage *image = [UIImage imageNamed:@"icon"];
        // 图片的宽度和高度
        CGFloat imageWH = image.size.width;
        
        // 设置圆环的宽度
        CGFloat border = 3;
        
        // 圆形的宽度和高度
        CGFloat ovalWH = imageWH + 2 * border;
        
        // 1.开启上下文
        UIGraphicsBeginImageContextWithOptions(CGSizeMake(ovalWH, ovalWH), NO, 0);
        
        // 2.画大圆
        UIBezierPath *path = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, ovalWH, ovalWH)];
    
        [[UIColor redColor] set];
        
        [path fill];
        
        // 3.设置裁剪区域
        UIBezierPath *clipPath = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(border, border, imageWH, imageWH)];
        [clipPath addClip];
        
        // 4.绘制图片
        [image drawAtPoint:CGPointMake(border, border)];
        
        // 5.获取图片
        UIImage *clipImage = UIGraphicsGetImageFromCurrentImageContext();
        
        // 6.关闭上下文
        UIGraphicsEndImageContext();
    
    

    相关文章

      网友评论

        本文标题:Quartz2D之图片裁切

        本文链接:https://www.haomeiwen.com/subject/sjxodttx.html