What is the easiest way to save UIView's representation to file?
My solution is,
UIGraphicsBeginImageContext(someView.frame.size);
[someView drawRect:someView.frame];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSString* pathToCreate = @"sample.png";
NSData *imageData = [NSData dataWithData:UIImagePNGRepresentation(image)];
[imageData writeToFile:pathToCreate atomically:YES];
but it seems tricky, and I think there must be more efficient way to do this.
You can also use the layer like this:
UIGraphicsBeginImageContext(someView.bounds.size);
[someView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With