ios 代码截屏模糊问题解决办法

我们常用的截图方法如下所示:

//尺寸是按照

UIGraphicsBeginImageContext(CGSizeMake(100,100 ));     //currentView 当前的view  创建一个基于位图的图形上下文并指定大小为
    [self.view.layer renderInContext:UIGraphicsGetCurrentContext()];//renderInContext呈现接受者及其子范围到指定的上下文
    UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();//返回一个基于当前图形上下文的图片
    UIGraphicsEndImageContext();//移除栈顶的基于当前位图的图形上下文
    UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);//然后将该图片保存到图片图

这个方法比较简单   一般都用这个方法

但是可能有的对截图的清晰度要求比较严  那么我们需要对这个方法进行修改  如下:

UIGraphicsBeginImageContextWithOptions(CGSizeMake(100,100 ), NO, 0.0); //currentView 当前的view  创建一个基于位图的图形上下文并指定大小为
    [self.view.layer renderInContext:UIGraphicsGetCurrentContext()];//renderInContext呈现接受者及其子范围到指定的上下文
    UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();//返回一个基于当前图形上下文的图片
    UIGraphicsEndImageContext();//移除栈顶的基于当前位图的图形上下文
    UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);//然后将该图片保存到图片图

主要是UIGraphicsBeginImageContextWithOptions方法发生了变化:

这里应该是ios7及以后设置分辨率的方法  

通入下面方法截取的屏幕图片会比较清晰

原文地址:https://www.cnblogs.com/gaoxiaoniu/p/5941284.html