一、示例:
1 - (void)setImgCircularStyle 2 { 3 // 创建一个基于位图的上下文(Context),相当于一个画布,以堆栈形式存储,并且将其设置为当前上下文(Context)。 4 UIGraphicsBeginImageContext(self.image.size); 5 // 获取当前上下文(Context)。 6 CGContextRef context = UIGraphicsGetCurrentContext(); 7 // 设置当前上下文(Context)的位图的边框线宽度。 8 CGContextSetLineWidth(context, 2); 9 // 设置指定上下文(Context)笔画颜色。 10 CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor); 11 CGRect rect = CGRectMake(0, 0, self.image.size.width, self.image.size.height); 12 // 在指定上下文(Context)中,画一个椭圆。rect设置椭圆的大小。 13 CGContextAddEllipseInRect(context, rect); 14 // 在指定上下文(Context)中,画一条线。在API中还有画其它形状方法。 15 // CGPoint point = CGPointMake(1, 1); 16 // CGContextAddLines(context, point); 17 // 裁剪上下文(Context)多余部分。在API中,还提供了一些其它方法。 18 CGContextClip(context); 19 20 // 绘制图形方法,绘制当前上下文的位图。 21 [self.image drawInRect:rect]; 22 CGContextAddEllipseInRect(context, rect); 23 // 搭边或填充(绘制)指定路径的上下文(Context)。 24 CGContextStrokePath(context); 25 // 从当前上下文(Context)中,获取一个UIImage对象,当对象就是之前绘制的图片。 26 UIImage *newImg = UIGraphicsGetImageFromCurrentImageContext(); 27 // 位图绘制完成后,关闭位图的上下文(Context) 28 UIGraphicsEndImageContext(); 29 self.image = newImg; 30 }
PS: 绘图教程:http://www.cocoachina.com/industry/20140115/7703.html
时间: 2024-10-12 13:01:00