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. A. Amr and Music

    解题思路:给出n种乐器学习所需要的时间,以及总共的天数, 问最多能够学多少门乐器,并且输出这几门乐器在原序列中的序号(不唯一) 按照升序排序,为了学到最多的乐器,肯定要选择花费时间最少的来学习 然后用 ...

  2. ActiveMQ学习笔记(15)----Message Dispatch高级特性(一)

    1. Message Cursors 1.1 概述 ActiveMQ发送持久化消息的典型的厝里方式是:当消息的消费者准备就绪时,消息发送系统把存储的消息按批次发送给消费者,在发送完一个批次的消息后,指 ...

  3. confluence6.0.3安装文档

    一.Atlassian Confluence 6.0.3安装文档包含内容 1.wiki的安装步骤: 2.旧系统迁移中碰到的无法编辑和问题和解决方案: 3.wiki源码安装包.连接mysql用的jar包 ...

  4. chrome 获取移动端页面元素信息

    一:背景在使用appium进行app端自动化测试的时候,一般使用的是uiautomatorviewer来给页面元素做定位.但如果遇到页面元素类型是webview的时候,则只能定位整个页面,而不能更进一 ...

  5. iOS技术栈-Swift版

    在网上没找到基于Swift的技术栈介绍,或者技术已经不适用,所以自己画了一个,后面的博客中会重新整理基于Swfit的UI控件介绍和常用第三方库地图

  6. Docker学习总结(9)——Docker常用命令

    容器生命周期管理 - docker [run|start|stop|restart|kill|rm|pause|unpause] 容器操作运维 - docker [ps|inspect|top|att ...

  7. List Slider

    http://www.jssor.com/download-jssor-slider-development-kit.html

  8. linux 流量统计小程序

    源代码例如以下: //2015/7/2 10:30:35 //gino #include <stdio.h> #include <sys/stat.h> #include &l ...

  9. 3.IntelliJ IDEA 使用详解

    转自:https://blog.csdn.net/wl_627292578/article/details/53796226 目录结构: InteliJ IDEA 没有工作空间的概念 project ...

  10. spring boot 集成 mybatis,数据库为mysql

    导入mven工程即可运行,方法不描述了,具体见 https://github.com/davidwang456/spring-boot-mybatis-demo