iOS小明开发笔记(十六) (Quartz2D图片剪切)


1.把图片显示在自定义的view

先把图片绘制到view上。按照原始大小,把图片绘制到一个点上。

代码:

- (void)drawRect:(CGRect)rect

{

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

    [image2 drawAtPoint:CGPointMake(100100)];

}
图片

2.剪切图片让图片圆形展示

思路:先画一个圆,让图片显示在圆的内部,超出的部分不显示。

图片

注意:显示的范围只限于指定的剪切范围,无论往上下文中绘制什么东西,只要超出了这个范围的都不会显示。

代码:

 - (void)drawRect:(CGRect)rect

 {

         //画圆,以便以后指定可以显示图片的范围

         //获取图形上下文

         CGContextRef ctx = UIGraphicsGetCurrentContext();

         CGContextAddEllipseInRect(ctx, CGRectMake(1001005050));

    

         //指定上下文中可以显示内容的范围就是圆的范围

         CGContextClip(ctx);

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

         [image2 drawAtPoint:CGPointMake(100100)];

}
 

3.剪切图片让图片三角形展示

代码:

 - (void)drawRect:(CGRect)rect

 {

    

         //画三角形,以便以后指定可以显示图片的范围

         //获取图形上下文

         CGContextRef ctx = UIGraphicsGetCurrentContext();

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

         CGContextMoveToPoint(ctx, 100100);

         CGContextAddLineToPoint(ctx, 60150);

          CGContextAddLineToPoint(ctx, 140150);

         CGContextClosePath(ctx);

    

    

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

         //指定上下文中可以显示内容的范围就是圆的范围

         CGContextClip(ctx);

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

         [image2 drawAtPoint:CGPointMake(100100)];

}


图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值