UIBezierPath to UIImage - PullRequest
       14

UIBezierPath to UIImage

0 голосов
/ 02 апреля 2012

Мне нужно нарисовать круговую диаграмму.Я нашел хорошее руководство здесьпотому что мне нужна графика в IOS.

Есть ли способ получить эту графику в UIImage, чтобы я мог показать ее в UIImageView?

В этом уроке http://blog.gafmediastudio.com/2010/07/02/draw-a-pie-chart-with-iphone-ipod-ipad/ онииспользуйте CGContext и, в конце концов, у них есть функция, которая возвращает UIImage.

Класс UIBezierPath кажется более простым в использовании, так как я могу получить этот чертеж в UIImage?Из того, что я прочитал, изменение drawRect не очень рекомендуется.По крайней мере, не за то, что я пытаюсь сделать.

Спасибо!

1 Ответ

3 голосов
/ 25 апреля 2012

Сначала сделайте снимок экрана и обрежьте изображение нужного вам размера.

UIGraphicsBeginImageContext(self.view.frame.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage* img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

//Crop the image
CGImageRef imageRef = CGImageCreateWithImageInRect([img CGImage], CGRectMake(0, 44, 1024, 660));
img = [UIImage imageWithCGImage:imageRef];
...