首页 > 其他 > 详细

Xcode裁剪图片并添加圆环

时间:2016-05-12 18:47:16      阅读:161      评论:0      收藏:0      [点我收藏+]

原理:开启一个比图片稍大的位图上下文,然后在位图上下文上绘制一个内切圆,最后绘制一个比位图上下文小的图片,并切去边缘。如下图所示。

技术分享

步骤:

       1. 加载原生图片

       2. 开启上下文

       3. 画大圆并填充路径

       4. 设置裁剪区域

       5. 绘制图形

       6. 获取图片

       7. 关闭上下文

代码:

- (void)viewDidLoad {
    [super viewDidLoad];
    //1.加载原生图片
    UIImage *image = [UIImage imageNamed:@"高圆圆"];
    //self.imageView.image = image;
    
    //图片的宽度和高度
    CGFloat imageWH = image.size.width;
    
    //边界宽度
    CGFloat border = 1.5;
    //圆环的高度和宽度
    CGFloat ovalWH = imageWH + 2 * border;
    
    //2.开启上下文
    UIGraphicsBeginImageContextWithOptions(CGSizeMake(ovalWH, ovalWH), NO, 0);
    
    //3.画大圆
    UIBezierPath *path = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, ovalWH, ovalWH)];
    
    [[UIColor colorWithRed:1.000 green:0.138 blue:0.046 alpha:1.000] set];
    
    [path fill];
    
    //4.设置裁剪区域
    UIBezierPath *clipedPath = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(border, border, imageWH, imageWH)];
    
    [clipedPath addClip];
    
    //5.绘制图形
    [image drawAtPoint:CGPointMake(border, border)];
    
    //6.获取图片
    UIImage *clipedImage = UIGraphicsGetImageFromCurrentImageContext();
    
    //7.关闭上下文
    UIGraphicsEndImageContext();
    self.imageView.image = clipedImage;
}
原图:

技术分享

裁剪后的图形:

技术分享


Xcode裁剪图片并添加圆环

原文:http://blog.csdn.net/bao_libra/article/details/51355375

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!