ios图片剪切之圆形头像
1 #import <UIKit/UIKit.h> 2 3 @interface UIImage (NJ) 4 /** 5 * 生成头像 6 * 7 * @param icon 头像图片名称 8 * @param border 头像边框大小 9 * @param color 头像边框的颜色 10 * 11 * @return 生成好的头像 12 */ 13 + (instancetype)imageWithIcon:(NSString *)icon border:(NSInteger)border color:(UIColor *)color; 14 @end 15 16 17 #import "UIImage+NJ.h" 18 @implementation UIImage (NJ) 19 20 + (instancetype)imageWithIcon:(NSString *)icon border:(NSInteger)border color:(UIColor *)color 21 { 22 // 0. 加载原有图片 23 UIImage *image = [UIImage imageNamed:icon]; 24 25 // 1.创建图片上下文 26 CGFloat margin = border; 27 CGSize size = CGSizeMake(image.size.width + margin, image.size.height + margin); 28 29 // YES 不透明 NO 透明 30 UIGraphicsBeginImageContextWithOptions(size, NO, 0); 31 // 2.绘制大圆 32 CGContextRef ctx = UIGraphicsGetCurrentContext(); 33 CGContextAddEllipseInRect(ctx, CGRectMake(0, 0, size.width, size.height)); 34 [color set]; 35 CGContextFillPath(ctx); 36 37 // 3.绘制小圆 38 CGFloat smallX = margin * 0.5; 39 CGFloat smallY = margin * 0.5; 40 CGFloat smallW = image.size.width; 41 CGFloat smallH = image.size.height; 42 CGContextAddEllipseInRect(ctx, CGRectMake(smallX, smallY, smallW, smallH)); 43 // [[UIColor greenColor] set]; 44 // CGContextFillPath(ctx); 45 // 4.指定可用范围, 可用范围的适用范围是在指定之后,也就说在在指定剪切的范围之前绘制的东西不受影响 46 CGContextClip(ctx); 47 48 // 5.绘图图片 49 [image drawInRect:CGRectMake(smallX, smallY, smallW, smallH)]; 50 51 // 6.取出图片 52 UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 53 54 return newImage; 55 56 } 57 @end
转载于:https://www.cnblogs.com/PJHome/p/5153122.html
ios图片剪切之圆形头像相关推荐
- iOS开发之裁剪圆形头像
2019独角兽企业重金招聘Python工程师标准>>> - (void)viewDidLoad {[super viewDidLoad];//加载图片UIImage *image = ...
- ios 图片裁剪-制作圆形QQ头像
/** * 图片裁剪 裁剪原理: 先在控制器上确定一个区域,然后再把需要裁剪的图片放在该区域上面,超出区域的图片都不显示 * * @param rect */ -(void) draw ...
- Flutter 图片组件Image、本地图片、远程图片、图片剪切、圆形图片
1图片组件Image介绍 Flutter 中,我们可以通过 Image 组件来加载并显示图片 Image 的数据源可以是asset.文件.内存以及网络. 这里我们主要给大家讲两个 Image.asse ...
- iOS中类似QQ圆形头像 处理
_sendImgView.image = model.sendImage; _sendImgView.layer.masksToBounds = YES; _sendImgView.layer.cor ...
- iOS 图片裁剪(用户头像裁剪)
图片裁剪 把一张图片裁剪为指定的样式,比如常见的用户头像 思路: 在图片的基础上绘制时,需要创建一个位图上下文 确定裁剪区域(超出裁剪区域的都将被清除) 绘制图片 从位图上下文中获取图片 关闭上下文 ...
- 圆形头像的7种显示方法
牙叔教程 简单易懂 效果展示 环境 手机: Mi 11 Pro Android版本: 11 Autojs版本: 9.0.11 图片形状: 正方形 圆形头像的7种显示方法 第1种: 使用Shapeabl ...
- ios UIImage 圆形图片剪切方案
@interface UIImage (Resize)//按形状切割图像 - (UIImage*)cutImageWithRadius:(int)radius;@end //图片剪切 - (UIIma ...
- ios 裁剪圆形头像_iOS开发笔记:实现圆形头像
初学iOS,记录一下自己遇到的一些问题,也希望能够对别人有所帮助 一般应用的个人头像如上图,圆形头像算是每款App中最常见的东西了,刚好最近有遇到这个问题,并且顺利解决了,其实很简单,调用layer这 ...
- 【iOS】Quartz2D图片剪切
一.使用Quartz2D完成图片剪切 1.把图片显示在自定义的view中 先把图片绘制到view上.按照原始大小,把图片绘制到一个点上. 代码: 1 - (void)drawRect:(CGRect) ...
最新文章
- win10休眠_win10休眠重新开机黑屏进入不了系统
- 用VisualVM分析MyEclipse
- 序列化和反序列化的概述
- 捡到银行卡套取密码取现1万多元,犯了信用卡诈骗罪被判7个月
- web.config 指定的默认页失效
- python创建和删除文件
- 在Raspberry Pi上轻松设置.NET Core并使用VS Code进行远程调试
- Spring boot 第一章 Spring发展历史
- 10个Python进行数据分析的小技巧
- 图像处理、分析与机器视觉(基于labview)_基于3D技术的机器视觉解决方案
- ARTS打卡第14周
- 同事推荐的一部老电影 《魔鬼代言人》
- 各种未授权访问漏洞的复现与利用
- Clark与Park变换详解
- Js实现实时显示系统时间(获取当前时间并显示)
- 完成一场未完成的相遇:在树图区块链上邂逅元宇宙里的加密艺术《四季合鸣》...
- 【离散数学】数理逻辑 第一章 命题逻辑(5) 对偶式、对偶原理
- Pygame实战:BOOM 这有一款超刺激的扎气球游戏等你来玩~
- unsigned详讲(干货满满)
- webpack设置不打包文件
热门文章
- 水稻细菌性条斑病的分割与严重程度估计方法
- 鼠标控制程序,按住shift显示S,按住Ctrl显示C,按键盘显示D,松开键盘显示U
- 服务器android打包,Android rom解包打包工具
- mysql myisam表加索引_MyISAM和InnoDB的索引实现
- if else if else语句格式_if-else代码优化的八种方案
- 网站流量预测任务第一名解决方案:从GRU模型到代码详解时序预测
- python是什么时候出现的_python诞生于什么时候
- IOS开发笔记 - 关于导航标题栏的颜色问题
- 11gR2 Grid Infrastructure Installation prerequisites On LINUX
- 塞班、libc.lib、系统错误-1、KErrNotFound、内嵌sis、embedded sis