四 、Quartz 2D 图形裁剪

剪切掉指定区域意外的部分,只保留该区域内的内容。

你可以先绘制裁剪区域以外的部分。再去裁切,这样可以保留两者。

如果,是先裁剪区域,然后再去绘制裁剪区域以外的部分。则后者失效。只显示裁剪区域内容

 

#pragma mark - 裁剪
- (void)test16{
    CGContextRef context = UIGraphicsGetCurrentContext();
    
    CGContextAddEllipseInRect(context, CGRectMake(220, 220, 100, 100));
    CGContextStrokePath(context);
    
    //    CGContextAddEllipseInRect(context, CGRectMake(20, 220, 100, 100));
  裁剪指定区域
// CGContextClip(context);
  裁剪指定矩形区域 CGContextClipToRect(context, CGRectMake(
0, 0, 200, 200)); CGImageRef image = [UIImage imageNamed:@"001"].CGImage; CGRect imageRect; imageRect.origin = CGPointMake(120, 120); imageRect.size = CGSizeMake(150, 150); // 这样图片是倒着的,因为坐标系不一样 // CGContextDrawImage(context, imageRect, image); CGContextDrawTiledImage(context, imageRect, image); }

 

posted @ 2016-04-11 08:44  人生路1/5  阅读(141)  评论(0)    收藏  举报