在我的drawRect
有一個path:
CGContextSetLineWidth(context, 1.5);
CGContextSetStrokeColorWithColor(context, [UIColor whiteColor].CGColor);
CGContextAddEllipseInRect(context, rect);
CGContextStrokePath(context);
CGContextClip(context);
CGContextTranslateCTM(context, 0.0, rect.size.height);
CGContextScaleCTM(context, 1.0, -1.0);
CGContextDrawImage(context, rect, self.image_.CGImage);
UIGraphicsBeginImageContext(rect.size);
UIImage * circleUserProfile = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[circleUserProfile drawAtPoint:CGPointMake(0, 0)];
CGContextRestoreGState(context);
有一個UIImage,我希望image能修剪成圓形,不知道怎麼實現?
當你調用UIGraphicsBeginImageContext
,就創建了新context。新的context就會占用上一個(就是你話畫好的那個)位置,然後用沒有內容的新context就會成為當前context,所以需要在調用UIGraphicsGetCurrentContext
之前開始圖片context,然後進行繪畫。