Как настроить прямоугольник или область отсечения - PullRequest
2 голосов
/ 27 марта 2011

Как можно настроить, изменить и очистить прямоугольник отсечения в iOS drawRect для обрезки общего CG-рисования линий, текста, изображений и т. Д. В небольшой части вида?

Можно ли использовать более сложную область отсечения, которая состоит из набора прямоугольников и кругов?

Ответы [ 2 ]

4 голосов
/ 28 марта 2011

Вы можете установить область отсечения с произвольными путями, не ограничиваясь прямоугольниками. Вот несколько способов сделать это:

  1. Вы можете нарисовать произвольный путь и установить область отсечения с ним. Например:

    CGContextBeginPath(context);
    //draw a path here
    CGContextClosePath(context);
    CGContextClip(context);
    //following drawing on the context will be clipped
    
  2. Если вы хотите использовать изображение маски для установки области отсечения, используйте метод CGContextClipToMask.

См. Пример проекта Apple «QuartzDemo» для получения дополнительной информации.

2 голосов
/ 18 сентября 2015

Если вы просто хотите обрезать прямоугольник, вы можете использовать:

CGContextClipToRect(context, clipRect);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...