Приложение для Iphone: Как заполнить изображение пустыми областями с помощью графики? - PullRequest
4 голосов
/ 13 октября 2010

Я новичок в разработке приложений для Iphone, и мне было интересно, можно ли сделать следующее:

У меня есть изображение .png, которое представляет собой простой рисунок фигуры, ограниченной черными краями и пустыми областями. Интересно, есть ли способ или режим для заполнения закрытых пустых областей изображения.

Это как горшок с начинкой MSpaint.

У меня есть этот код:

CGContextRef ctx = UIGraphicsGetCurrentContext();
UIImage *image = [UIImage imageNamed:@"myImage.png"];
CGContextDrawImage(context, CGRectMake(0, 0, 145, 15), image.CGImage);
[image drawInRect:CGRectMake(0, 0, 145, 15)];

Теперь я не знаю, что делать, чтобы заполнить ...

Буду очень признателен, если кто-нибудь ответит на этот вопрос. Большое спасибо!

1 Ответ

0 голосов
/ 13 октября 2010

У меня есть изображение ... которое ... ограничено черными краями и пустыми областями.

Если под «пустым» вы подразумеваете, что у этих областей есть альфа-ноль, просто сначала заполните контекст желаемым цветом (заполняя весь контекст контекста), а затем нарисуйте изображение сверху. Цвет будет отображаться там, где изображение прозрачно, а не там, где его нет.

Более близким совпадением с тем, что вы просили, было бы нарисовать изображение в режиме наложения Копировать, а затем выполнить заливку цветом в режиме наложения Исходный.

Режимы смешивания - ваш друг; выучи их хорошо, потому что с ними можно многое сделать.

...