博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
绘制饼状图,绘制曲线,裁剪图片,添加水印
阅读量:6455 次
发布时间:2019-06-23

本文共 2101 字,大约阅读时间需要 7 分钟。

  hot3.png

1.绘制饼状图

a.获取上下文

CGContextRef context=UIGraphicsGetCurrentContext( );

b.绘制一段圆弧

CGContextAddArc(context , x,y,M_PI*a,M_PI*b,0);

c.绘制一条直线

CGContextAddLineToPoint( context,x,y);

d.设置闭合

CGContextClosePath(context);

e.设置线条颜色和填充色

[ [ UIColor redColor] set];

[ [ UIColor redColor] setFill];

f.渲染线条和填充色

CGContextStrokePath(context);

 

2.绘制曲线

a.获取上下文

CGContextRef context=UIGraphicsGetCurrentContext( );

b.设置曲线的起点

CGContextMoveToPoint(context,x,y);

c.绘制曲线

CGContextAddCurveToPoint(context,点1的x坐标,点1的y坐标,点2的x坐标,点2的y坐标,曲线的终点x坐标,终点的y坐标);

d.设置颜色

[ [ UIColor redColor ] set ];

e.渲染颜色

CGContextStrokePath( context);

3.裁剪图片

a.获取背景图

UIImage *image=[ UIImage imageNamed:图片的名字];

b.开始

UIGraphicsBeginImageContext( image.size);

c.获取山下文

CGContextRef context=UIGraphicsGetCurrentContext( );

d.

CGContextAddEllipseInRect(context, CGRect (0,0,image.size.width, image.size.height ) );

e.裁剪

CGContextClip( context );

f.

[ image drawAtPoint:CGPointZero];

g.获取裁剪后的新图片

UIImage * newImage=UIGraphicsGetImageFromCurrentImageContext( );

h.设置一个UIImageView

UIImageView *imageView=[ [ UIImageView alloc] initWithFrame:CGRectMake(0,20,image.size.width,image.size.height) ];

i.设置imageView所要显示的内容

imageView. image=newImage;

j.添加到根视图上

[ self.view addSubView: imageView];

l.结束

UIGraphicsEndImageContext( );

 

4.添加水印

a.获得背景图

UIImage *backImage=[ UIImage imageNamed:背景图片];

b.开始

UIGraphicsBeginImageContextWithOptions(backImage.size,动画效果,缩放比例 );

c.

[ backImage drawInRect:CGRectMake(0,0,backImage.size.width,backImage.size.height)];

d.获得水印图片

UIImage * waterImage=[ UIImage imageNamed:水印图片];

e.

[ waterImage drawInRect : CGRectMake( backImage.size.width-waterImage.size.width*0.1-100,backImage.size.height-waterImage.size.height*0.1-100,waterImage.size.width*0.2,waterImage.size.height*0.2 ) blendMode:kCGBlendModeNormal alpha:0.5];

f.获取新的图片

UIImage *newImage= UIGraphicsGetImageFromCurrentImageContext( );

g.绘制UIImageView

UIImageView *imageView=[ [ UIImageView alloc] initWithFrame:CGRectMake( 0,20,self.frame.size.width,self.frame.size.height-20)] ;

imageView.image=newImage;

[ self addSubView:imageView];

转载于:https://my.oschina.net/1861/blog/737986

你可能感兴趣的文章
iOS 串行语音播报解决方案(实现支付宝语音收款功能)
查看>>
Nginx 学习系列(三) ------------- alias、root指令区别
查看>>
React 生命周期
查看>>
干货:分布式系统学习笔记
查看>>
“我想要”的疑惑
查看>>
android位运算讲解与实战
查看>>
180道Java技术面试题:阿里11面试+网易+百度+美团!
查看>>
Android简易柱状图和曲线图表实现
查看>>
一款基于Handler的Android定时器与倒计时器
查看>>
第八章:使用拦截器记录你的SpringBoot的请求日志
查看>>
演讲实录|马晓宇:When TiDB Meets Spark
查看>>
日推笔记
查看>>
JNI引用
查看>>
(三分钟系列)详解Redis字符串内部结构
查看>>
数据结构:串
查看>>
webpack配置文件中属性的位置和数据结构
查看>>
以太坊:Dapp及相关开发工具介绍
查看>>
Android开发中常用的命令总结(不定时更新)
查看>>
面试题解:输入一个数A,找到大于A的一个最小数B,且B中不存在连续相等的两个数字...
查看>>
看ThreadPoolExecutor源码前的FLAG
查看>>