//畫一個(gè)圓角矩形
//簡(jiǎn)單的說(shuō)就是8個(gè)點(diǎn),分別是第邊的中點(diǎn)(不局限于中點(diǎn),只要比半徑大就好)加各頂點(diǎn)就好,后面10是半徑
CGRect rrect = CGRectMake(0.0,0.0,60.0,60.0); //位置+大小
CGFloat radius = 10.0;
//獲取頂點(diǎn)坐標(biāo)x,中間坐標(biāo)x,最右坐標(biāo)x
CGFloat minx = CGRectGetMinX(rrect), midx = CGRectGetMidX(rrect), maxx = CGRectGetMaxX(rrect);
CGFloat miny = CGRectGetMinY(rrect), midy = CGRectGetMidY(rrect), maxy = CGRectGetMaxY(rrect);
//從左邊中心點(diǎn)開始
CGContextMoveToPoint(context, minx, midy);
CGContextAddArcToPoint(context, minx, miny, midx, miny, radius); //左上角點(diǎn)到上邊中點(diǎn)
CGContextAddArcToPoint(context, maxx, miny, maxx, midy, radius); //右上角點(diǎn)到右邊中點(diǎn)
CGContextAddArcToPoint(context, maxx, maxy, midx, maxy, radius); //右下角點(diǎn)到下邊中點(diǎn)
CGContextAddArcToPoint(context, minx, maxy, minx, midy, radius); //左下角點(diǎn)到左邊中心
CGContextClosePath(context); //完成一個(gè)循環(huán),封閉起來(lái)
CGContextDrawPath(context, kCGPathFillStroke);
//畫圓形圖片(在UIImage+getegory里寫)
#define MINSIZE(A,B) ((A)>=(B)?(B):(A))
//獲取圖片較小的邊
CGFloat selfSize = MIN(self.size.width, self.size.height);
CGRect rect = CGRectMake(0, 0, selfSize, selfSize);
//根據(jù)一個(gè)rect創(chuàng)建一個(gè)橢圓(因?yàn)閞ect為正方形所以這里為圓)
CGContextAddEllipseInRect(context, rect);
//裁剪
CGContextClip(context);
//將原照片畫到圖形上下文中的rect范圍里
[self drawInRect:rect];
//從上下文獲取裁剪后的照片
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();