iOS自定义裁剪区域,正方形圆形图片头像裁剪,仿QQ头像裁剪,圆形遮罩,矩型遮罩

本文介绍了如何在iOS应用中实现自定义图片裁剪功能,包括正方形、圆形以及仿QQ头像裁剪。通过利用UIScrollView的zoom功能和坐标转换,实现裁剪框的任意缩放与位置调整。关键步骤包括自定义矩形和圆形遮罩处理,以及裁剪图片的代码实现。提供了GitHub链接以供参考。
摘要由CSDN通过智能技术生成

最近项目中用到了自定义图片裁剪区域的图片裁剪功能,自己写了一个,可能有诸多不完善的地方,请大家指正。

支持任意区域裁剪,9:16裁剪、16:9裁剪、1:1裁剪、圆形裁剪等等,总之裁剪框的大小,裁剪框的区域都自定义;

如下截图:

裁剪器.gif

整体思路:

1.利用scrollview的zoom缩放功能,缩放对象是所需裁剪图片的imageView;
2.利用scrollView的contentInset参数,保证裁剪图片在裁剪框内,并且可以裁剪图片任意位置;
3.坐标转换找出裁剪区域对应的在图片中的位置,进行图片的渲染裁剪。

使用方法
    LZImageCropping *imageBrowser = [[LZImageCropping alloc]init];
    //设置代理
    imageBrowser.delegate = self;
    //设置自定义裁剪区域大小
    imageBrowser.cropSize = CGSizeMake(self.view.frame.size.width - 60, (self.view.frame.size.width-60));
    //设置图片
    NSString *path = [[NSBundle mainBundle] pathForResource:@"IMG_1121"  ofType:@"jpg"];
    UIImage *image = [UIImage imageWithContentsOfFile:path];
    cropper.image = image;
    //是否需要圆形
    imageBrowser.isRound = YES;
    [self presentViewController:imageBrowser animated:YES completion:nil];

以下为关键代码

二、自定义矩
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值