uiview 和 scrollview截图

近期操蛋的项目又要求截图分享,so就自己搞了下截图分享,大家可以看看,少走点弯路
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42



//截取ScrollView
- (UIImage*)screenView:(UIScrollView *)scrollView
{
UIImage* image = nil;
UIGraphicsBeginImageContextWithOptions(CGSizeMake(kScreen_width, scrollView.contentSize.height), YES, 0.0);
{
CGPoint savedContentOffset = scrollView.contentOffset;
CGRect savedFrame = scrollView.frame;
scrollView.contentOffset = CGPointZero;
scrollView.frame = CGRectMake(0, 0, kScreen_width, scrollView.contentSize.height);

[scrollView.layer renderInContext: UIGraphicsGetCurrentContext()];
image = UIGraphicsGetImageFromCurrentImageContext();

scrollView.contentOffset = savedContentOffset;
scrollView.frame = savedFrame;
}
UIGraphicsEndImageContext();

if (image != nil) {
return image;
}
return nil;

}

//截取UIView
- (UIImage*)screenViewWithView:(UIView *)view
{

// //高清晰截图
UIGraphicsBeginImageContextWithOptions(CGSizeMake(view.frame.size.width, view.frame.size.height), YES, 0.0);
CGContextRef context = UIGraphicsGetCurrentContext();
[view.layer renderInContext:context];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

return image;
}

转载请注明原地址,Apolla的博客 http://apolla.github.io/ 谢谢!