IOS圖片剪切代碼
我們常常需要將一個方形圖片剪切成圓形,或者從某個大圖里面獲得一部分,這些時候我們通常用剪切。
裁剪相當于一種屬性,減掉前面繪制的圖形以外的區域。所以我們裁剪過之后通常要恢復以前的繪圖狀態
此時我們一般分以下三步:
①保存當前的上下文狀態
CGContextSaveGState(ctr);
②在繪制好一些區域以后,進行裁剪
CGContextClip(ctr);
③恢復裁剪之前的上下文狀態
CGContextRestoreGState(ctr);
//剪成圓形圖片
void drawClipImage(CGRect rect,CGContextRef ctr)
{
//裁剪之前我們通常要保存一下當前的狀態
CGContextSaveGState(ctr);
CGContextAddEllipseInRect(ctr, CGRectMake(rect.size.width/3, 0, rect.size.width/3, rect.size.height/4));
CGContextAddRect(ctr, CGRectMake(100, 200, 100, 200));//裁剪相當于一種屬性,減掉前面繪制的圖形以外的區域 CGContextClip(ctr); CGContextStrokePath(ctr); UIImage *image = [UIImage imageNamed:@"1"]; [image drawInRect:CGRectMake(0, 0, rect.size.width, rect.size.height)]; //恢復之前的上下文狀態 CGContextRestoreGState(ctr); } </pre>
本文由用戶 pwmd 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!