点击截图

2017-11-23  本文已影响16人  翻这个墙

点击实现将控件截图的步骤

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
// 开启位图上下文
    UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, 0);

// 获取当前上下文==>位图上下文
    CGContextRef ctx = UIGraphicsGetCurrentContext();

// 获取view图层
    CALayer *vcLayer = self.view.layer;

// 把控件图层渲染到位图上下文中,图层只能渲染,不能绘制
    [vcLayer renderInContext:ctx];
//    [vcLayer drawInContext:ctx];

// 从上下文中取出图片
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();

// 关闭上下文
    UIGraphicsEndImageContext();

// 保存图片
    // Quality:图片质量
    //jpeg取得图片质量不一定是最好的,设置数值越少质量越差;png的是最好的。上传服务器时最好用jpeg压缩一下,服务器压力没那么大
   NSData *data = UIImageJPEGRepresentation(image, 0.0000001);

    [data writeToFile:@"/Users/xiaomage/Desktop/view.jpg" atomically:YES];
}
上一篇 下一篇

猜你喜欢

热点阅读