I\'m using this Swift code to take a screenshot of my app:
UIGraphicsBeginImageContextWithOptions(UIScreen.mainScreen().bounds.size, false, 0);
self.view.drawVi
For example if you want to take the screen shot of the UIView
rectangle at position (50,50)
with height of (100,150)
.
First set the Image Context to the size of the rectangle. This sets the image size.
UIGraphicsBeginImageContextWithOptions(CGSizeMake(100,150), false, 0);
Now draw the view in this context in such a way that, the visible part of the screenshot starts at (50,50)
self.view.drawViewHierarchyInRect(CGRectMake(-50,-50,view.bounds.size.width,view.bounds.size.height) afterScreenUpdates: true)
This clips the screen shot at (100,150)
because we set the size of our context
. Now take the UIImage from this.
var image:UIImage = UIGraphicsGetImageFromCurrentImageContext();