开发者

How to set up a clipping rectangle or area

开发者 https://www.devze.com 2023-02-19 22:18 出处:网络
How doe开发者_高级运维s one set up, modify, and clear a clipping rectangle inside a iOS drawRect for clipping generic CG drawing of lines, text, images, etc. to a small portion of a view?

How doe开发者_高级运维s one set up, modify, and clear a clipping rectangle inside a iOS drawRect for clipping generic CG drawing of lines, text, images, etc. to a small portion of a view?

Is it possible to use a more complex clipping region that is a composite of a bunch of rectangles and circles?


You can set a clipping area with arbitrary paths, not restricted to rectangles. The followings are some ways of doing it:

  1. You can draw an arbitrary path and set a clipping area with it. For example:

    CGContextBeginPath(context);
    //draw a path here
    CGContextClosePath(context);
    CGContextClip(context);
    //following drawing on the context will be clipped
    
  2. If you want to use a mask image to set a clipping area, use CGContextClipToMask method.

See Apple's 'QuartzDemo' sample project for more usages.


If you just want to clip to a rect you can use:

CGContextClipToRect(context, clipRect);
0

精彩评论

暂无评论...
验证码 换一张
取 消