使用OC进行iOS截屏,同时保证清晰度
来源:互联网 发布:民谣吉他调音器软件 编辑:程序博客网 时间:2024/06/05 20:48
一般情况下我们使用如下代码进行截屏:
我们需要关注下这个方法:
UIGraphicsBeginImageContextWithOptions(CGSize size, BOOL opaque, CGFloat scale)
其中,scale是缩放因子。在UIGraphicsBeginImageContext方法中,缩放因子默认是1.0。
之所以生成的图片不清晰,问题就出在scale上。Retina屏幕的实际像素是逻辑像素的两倍,Plus是三倍,所以我们需要手动指定scale。
1、我们可以使用0.0,0.0的意思就是自动调整缩放因子以适配显示屏。
2、问你可以使用[UIScreen mainScreen].scale这个值来动态指定当前设备的缩放因子。
正确的截屏代码如下:
UIWindow *screenWindow = [[UIApplication sharedApplication] keyWindow];UIGraphicsBeginImageContext(screenWindow.frame.size);[screenWindow.layer renderInContext:UIGraphicsGetCurrentContext()];UIImage *screenImage = UIGraphicsGetImageFromCurrentImageContext();UIGraphicsEndImageContext();但是会发现获取的截屏图片模糊,不如系统截屏清晰。
我们需要关注下这个方法:
UIGraphicsBeginImageContextWithOptions(CGSize size, BOOL opaque, CGFloat scale)
其中,scale是缩放因子。在UIGraphicsBeginImageContext方法中,缩放因子默认是1.0。
之所以生成的图片不清晰,问题就出在scale上。Retina屏幕的实际像素是逻辑像素的两倍,Plus是三倍,所以我们需要手动指定scale。
1、我们可以使用0.0,0.0的意思就是自动调整缩放因子以适配显示屏。
2、问你可以使用[UIScreen mainScreen].scale这个值来动态指定当前设备的缩放因子。
正确的截屏代码如下:
UIWindow *screenWindow = [[UIApplication sharedApplication] keyWindow];UIGraphicsBeginImageContextWithOptions(screenWindow.frame.size, NO, [UIScreen mainScreen].scale);[screenWindow.layer renderInContext:UIGraphicsGetCurrentContext()];UIImage *screenImage = UIGraphicsGetImageFromCurrentImageContext();UIGraphicsEndImageContext();
0 0
- 使用OC进行iOS截屏,同时保证清晰度
- Android图片加载方案——如何保证图片清晰度同时,最大限度节省内存使用量
- iOS 保证视频的清晰度和流畅度
- ios 截取view上内容 返回image 保证清晰度
- 使用MediaRecorder清晰度问题
- PHP实现图片压缩同时保持清晰度
- iOS多个网络请求同时进行
- 清晰度
- 清晰度
- 使用ffmpeg录像,同时进行语音识别
- iOS开发 - OC - UIWebView使用
- 【iOS】OC-Quartz2D简单使用
- iOS-OC-widget使用教程
- Android下同时使用WIFI与移动网络时保证优先使用移动网络
- OC - 使用AFNetworking进行图片上传
- ios 把view生成image, 保持清晰度
- iOS 截屏图片模糊,提高清晰度
- 360回应声明:将保证360和QQ同时正常使用
- 解决 Maven oracle驱动无法下载到的问题
- AndroidStudio项目提交(更新)到github最详细步骤
- java随机抽取对象(图片的随机播放、抽取幸运观众 等)
- linux 下部署nodejs(两种方式)
- CSS自适应布局
- 使用OC进行iOS截屏,同时保证清晰度
- wnmp(windows+nginx+mysql+php)环境搭建和配置
- python matlab 相互转化,编写文件
- 聊聊并发(四)深入分析ConcurrentHashMap
- 分页类
- Android studio生成jar包
- hiho一下 #1378 : 网络流二·最大流最小割定理 【最大流及S集合】
- Apache Log4j配置说明
- 小程序中关于app.js中用户的调用与获取unionid