sudo rm -rf
sudo rm -rf

Reputation: 29524

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();

Upvotes: 36

Views: 8600

Answers (1)

Martin Cote
Martin Cote

Reputation: 29852

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.

Upvotes: 90

Related Questions