quartz2D 图片剪切

- (void)drawRect:(CGRect)rect

{

    // Drawing code

    

    // 画圆, 以便于以后指定能够显示内容范围

    CGContextRef ctx = UIGraphicsGetCurrentContext();

    

    CGContextAddEllipseInRect(ctx, CGRectMake(100, 100, 50, 50));

    

    // 指定上下文中能够显示内容的范围

    CGContextClip(ctx);

    

    CGContextStrokePath(ctx);

    

    /*

     CGContextRef ctx = UIGraphicsGetCurrentContext();


    // 2. 绘制三角形

    // 设置起点

    CGContextMoveToPoint(ctx, 100, 10);

    // 设置第二个点

    CGContextAddLineToPoint(ctx, 50, 100);

    // 设置第三个点

    CGContextAddLineToPoint(ctx, 150, 100);

    // 设置终点

    //    CGContextAddLineToPoint(ctx, 100, 10);

    // 关闭起点和终点

    CGContextClosePath(ctx);

    

    // 指定上下文中能够显示内容的范围

    // 注意,指定范围(也就是指点剪切的方法一定要在绘制范围之前调用)

    CGContextClip(ctx);

    

    // 3.渲染图形到layer

    CGContextStrokePath(ctx);

    */

    

    UIImage *image = [UIImage imageNamed:@"me"];

    

    // 依照原始大小绘制

    [image  drawAtPoint:CGPointMake(100, 100)];

    

    

    CGContextAddRect(ctx, CGRectMake(10, 10, 100, 100));

    

    CGContextFillPath(ctx);

    

}


posted on 2017-07-03 11:33  wgwyanfs  阅读(76)  评论(0编辑  收藏  举报

导航