截取过程,未选取区域有阴影遮罩
截取成功后,相册:
主要代码:
#import "MyScreenShot.h"
@implementation MyScreenShot
//截取整个屏幕
- (UIImage *)imageFromView:(UIView *)view {
return [self imageFromView:view withFrame:[[UIScreen mainScreen] bounds]];
}
//截取rect
- (UIImage *)imageFromView:(UIView *)view withFrame:(CGRect)rect {
UIGraphicsBeginImageContext(view.frame.size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSaveGState(context);
UIRectClip(rect);
[view.layer renderInContext:context];
UIImage * retImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(retImage, nil, nil, nil);
NSLog(@"the pic size : %@", NSStringFromCGSize(retImage.size));
return retImage;
}
@end