Экспортировать CGPath как JPG или PNG - PullRequest
0 голосов
/ 03 декабря 2009

Можно ли взять путь в UIView с помощью CGPath и экспортировать его как PNG?

Ответы [ 2 ]

3 голосов
/ 17 января 2010

Предполагая, что вам нужен UIImage, а не файл png, вы можете сделать что-то вроде этого:

UIGraphicsBeginImageContext(size); 
CGContextRef context = UIGraphicsGetCurrentContext();

CGContextSetRGBStrokeColor(context, 1.0, 0.0, 0.0, 1.0);
CGContextSetLineWidth(context, 2.0);
CGContextSetLineCap(context, kCGLineCapSquare);

//DRAW YOUR PATH HERE

CGContextStrokePath(context);

myUIImage = UIGraphicsGetImageFromCurrentImageContext();
[myUIImage retain];  

UIGraphicsEndImageContext();
1 голос
/ 03 декабря 2009

Самый чистый способ сделать это - снова выполнить весь рисунок в контексте изображения, создаваемого UIGraphicsBeginImageContext(), получить из него UIImage, а затем сохранить его с помощью функций UIImagePNG/JPEGRepresentation().

Обратите внимание, что UIView не "держит" изображения. Вы можете перерисовать слой UIView, но это грубое нарушение MVC (вы используете представления для хранения данных модели!), И оно не выглядит чистым для меня.

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