2012-04-02 6 views
0

원형 차트를 그려야합니다. 여기에 멋진 튜토리얼을 찾았습니다 http://mac-objective-c.blogspot.com/2009/04/drawing-pie-charts.htmlUIBezierPath to UIImage

이 예제에서는 NSBezierPath를 사용하지만 IOS에서 그래픽이 필요하기 때문에 UIBezierPath를 사용합니다.

내가 UIImageView에서 보여줄 수 있도록 UIImage에서 해당 그래픽을 얻을 수있는 방법이 있습니까?

이 튜토리얼에서는 http://blog.gafmediastudio.com/2010/07/02/draw-a-pie-chart-with-iphone-ipod-ipad/은 CGContext를 사용하고 결국에는 UIImage를 반환하는 함수가 있습니다.

UIBezierPath 클래스는 사용하기가 더 쉬운 것처럼 보이므로 어떻게 UIImage에서 그 그림을 얻을 수 있습니까? 내가 뭘 읽고 drawRect 변경 권장하지 않습니다. 적어도 내가하려는 일이 아니야.

감사합니다.

답변

3

먼저 화면을 찍고 원하는 크기의 이미지를 자릅니다.

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]; 
+0

결국 내 목표를 달성하기 위해 내 게시물에 두 번째 링크를 사용했습니다. 어쨌든 고마워. –