Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

UIGraphicsGetImageFromCurrentImageContext() Retina resolution?

I'm taking a picture of my screen and manipulating it by using UIGraphicsGetImageFromCurrentImageContext(). Everything is working just fine. However, on an iPhone 4, the resolution looks pretty shabby as it seems like the image it uses is standard resolution, not @2x. Is there any way to increase the resolution of the resulting image?

UIGraphicsBeginImageContext(self.view.bounds.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
like image 683
sudo rm -rf Avatar asked Feb 11 '11 02:02

sudo rm -rf


1 Answers

You should use UIGraphicsBeginImageContextWithOptions which allows you to set the scale factor. Use a scale factor of 0.0f to use the device's scale factor.

like image 116
Martin Cote Avatar answered Oct 23 '22 10:10

Martin Cote