demo下载地址:http://pan.baidu.com/s/1mgBf6YG

_logoImageView.image = [self
getEllipseImageWithImage:[UIImage
imageNamed:@"1_wsq724439564.jpg"]];

-(UIImage*)getEllipseImageWithImage:(UIImage*)originImage

{

;//圆形图像距离图像的边距

UIColor* epsBackColor = [UIColor
greenColor];//图像的背景色

CGSize originsize = originImage.size;

CGRect originRect =
CGRectMake(, , originsize.width, originsize.height);

UIGraphicsBeginImageContext(originsize);

CGContextRef ctx =
UIGraphicsGetCurrentContext();

//目标区域。

CGRect desRect = 
CGRectMake(padding, padding,originsize.), originsize.));

//设置填充背景色。

CGContextSetFillColorWithColor(ctx, epsBackColor.CGColor);

UIRectFill(originRect);//真正的填充

//设置椭圆变形区域。

CGContextAddEllipseInRect(ctx,desRect);

CGContextClip(ctx);//截取椭圆区域。

[originImage drawInRect:originRect];//将图像画在目标区域。

UIImage* desImage =
UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

return desImage;

}

带有边框的圆形头像。

-(UIImage*)getEllipseImageWithImage:(UIImage*)originImage

{

;//圆形图像距离图像的边距

UIColor* epsBackColor = [UIColor
greenColor];//图像的背景色

CGSize originsize = originImage.size;

CGRect originRect =
CGRectMake(, , originsize.width, originsize.height);

UIGraphicsBeginImageContext(originsize);

CGContextRef ctx =
UIGraphicsGetCurrentContext();

//目标区域。

CGRect desRect = 
CGRectMake(padding, padding,originsize.), originsize.));

//设置填充背景色。

CGContextSetFillColorWithColor(ctx, epsBackColor.CGColor);

UIRectFill(originRect);//真正的填充

//设置椭圆变形区域。

CGContextAddEllipseInRect(ctx,desRect);

CGContextClip(ctx);//截取椭圆区域。

[originImage drawInRect:originRect];//将图像画在目标区域。

//
边框 //

;

CGContextSetStrokeColorWithColor(ctx, [UIColor
whiteColor].CGColor);//设置边框颜色

CGContextSetLineCap(ctx,
kCGLineCapButt);

CGContextSetLineWidth(ctx, borderWidth);//设置边框宽度。

CGContextAddEllipseInRect(ctx, desRect);//在这个框中画圆

CGContextStrokePath(ctx);
// 描边框。

//
边框 //

UIImage* desImage =
UIGraphicsGetImageFromCurrentImageContext();//
获取当前图形上下文中的图像。

UIGraphicsEndImageContext();

return desImage;

}


iOS 画圆形头像的更多相关文章

  1. iOS实现头像选取(照相或者图片库)、大小等比缩放、生成圆形头像

    //弹出actionsheet.选择获取头像的方式 //从相册获取图片 -(void)takePictureClick:(UIButton *)sender { // /*注:使用,需要实现以下协议: ...

  2. UWP 画一个圆形头像

    经常需要做一个圆形头像的样式,like this 做法很简单,直接上xaml. <Ellipse Width=" Height="> <Ellipse.Fill& ...

  3. Android 圆形头像 自己动手

    圆形头像DIY 现在大部分app使用的都是圆形头像,网上开源的也很多,但是有没有考虑过DIY圆形头像呢?下面就自己实现一个,先看下demo展示 第一步:原理解释(图片很丑,原理很真) 1.画外框圆形, ...

  4. Android之圆形头像裁切

    PS:今天项目测试组发现,百度地图定位的数据坐标位置是正确的,但是显示的数据是错误的.最后查来查去发现,那个商厦在百度地图上根本就没有那条数据,这让我如何显示,当初就推崇使用高德地图定位,上面的数据量 ...

  5. Android_AsyncTaskDemo之QQ记步数(画圆形图片知识)

    今天学习了AsyncTask Android 的异步机制.我简单的实现我的一个小小案例--qq记步数.然后穿插一个画圆形图片的知识点. 由于所学知识有限,目前我计数,还有排名等等我就简单的利用随机数实 ...

  6. Android ImageView圆形头像

    转载自:http://m.oschina.net/blog/321024 Android ImageView圆形头像 图片完全解析 我们在做项目的时候会用到圆形的图片,比如用户头像,类似QQ.用户在用 ...

  7. Android特效专辑(五)——自定义圆形头像和仿MIUI卸载动画—粒子爆炸

    Android特效专辑(五)--自定义圆形头像和仿MIUI卸载动画-粒子爆炸 好的,各位亲爱的朋友,今天讲的特效还是比较炫的,首先,我们会讲一个自定义圆形的imageView,接着,我们会来实现粒子爆 ...

  8. Android自定义控件实例,圆形头像(图库 + 裁剪+设置),上传头像显示为圆形,附源码

    Android项目开发中经常会遇见需要实现圆角或者圆形的图片功能,如果仅仅使用系统自带的ImageView控件显然无法实现此功能,所以通过系列文章的形式由简到繁全方位的介绍一下此功能的实现,巩固一下自 ...

  9. 【转】Android ImageView圆形头像

    Android ImageView圆形头像 图片完全解析 我们在做项目的时候会用到圆形的图片,比如用户头像,类似QQ.用户在用QQ更换头像的时候,上传的图片都是矩形的,但显示的时候确是圆形的. 原理: ...

随机推荐

  1. NetworkX-根据权重画图

    load_data = sio.loadmat(load_path) #阈值处理 mat=np.array(load_data['R']) mat[mat<0]=0 mat[mat<0.4 ...

  2. Hdu 2586 树链剖分求LCA

    Code: #include<cstdio> #include<cstring> #include<vector> #include<algorithm> ...

  3. CodeForces-920E Connected Components? 广度搜索 双向链表 判断联通 大量重复节点的删除

    题目链接:https://cn.vjudge.net/problem/CodeForces-920E 题意 给一个补图,问各个联通块有几个元素,升序排列 注意maxn=2e5, maxm=2e10 思 ...

  4. [BZOJ3673&3674]可持久化并查集&加强版

    题目大意:让你实现一个可持久化的并查集(3674强制在线). 解题思路:刚刚介绍了一个叫rope的神器:我是刘邦,在这两题(实际上两题没什么区别)就派上用场了. 正解应该是主席树||可持久化平衡树,然 ...

  5. redis搭建与安装

    redis提供五种数据类型:string,hash,list,set及zset(sorted set). 第一部分:安装redis 希望将redis安装到此目录 1 /usr/local/redis ...

  6. jQuery第二课 点击弹出一个提示框

    选择器允许您对元素组或单个元素进行操作. jQuery 选择器 在前面的章节中,我们展示了一些有关如何选取 HTML 元素的实例. 关键点是学习 jQuery 选择器是如何准确地选取您希望应用效果的元 ...

  7. 【codeforces 46C】Hamsters and Tigers

    [题目链接]:http://codeforces.com/problemset/problem/46/C [题意] 给你一个长度为n的01串; 让你把所有的0放在一起,把所有的1放在一起; (即0都是 ...

  8. 过Hard题目.周末

      # Title Editorial Acceptance Difficulty Frequency   . 65 Valid Number     12.6% Hard    . 126 Word ...

  9. [Transducer] Lazyness in Transduer

    Transducers remove the requirement of being lazy to optimize for things like take(10). However, it c ...

  10. 1.C语言指针学习之外挂篇

    学习了c语言的指针,那么指针能做什么呢,首先,他可以写外挂 首先我们来编写一个dll,挂载到植物大战僵尸上,记住是dll,因为如果你创建一个应用程序,该应用程序是不能操作其他程序的地址的. 第一步,打 ...