iOS 截图功能

时间:2021-08-24 11:51:04

步骤:

当我们所需截的图的大小超过我们屏幕的大小时,可以用UIScrollView作为底图,这样就可以截图我们所需的大小,即

UIScrollView *scrollView = self.view.subviews[i];  // i 为scrollerView所在subviews的位置

 scrollView.frame = CGRectMake(0, 0, self.view.frame.size.width, scrollView.contentSize.height); // 设置scrollView的大小

1.设置需要所需截图的视图范围

   CGSize size = CGSizeMake(scrollView.contentSize.width ,scrollView.contentSize.height);

2.开启绘画

  UIGraphicsBeginImageContextWithOptions(size, YES, 0.0);

  第一个参数 截图的大小

  第二个参数 透明开关,如果图形完全不用透明,设置为YES以优化位图的存储

  第三个参数 缩放因子

3.将图层渲染到上下文中

[view.layer renderInContext:UIGraphicsGetCurrentContext()];

 view.layer 所需要截的视图的layer

4.取出image

UIImage *image = UIGraphicsGetImageFromCurrentImageContext();