首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何强制-drawViewHierarchyInRect:afterScreenUpdates:以2倍分辨率拍摄快照?

如何强制-drawViewHierarchyInRect:afterScreenUpdates:以2倍分辨率拍摄快照?
EN

Stack Overflow用户
提问于 2014-02-04 18:57:40
回答 2查看 1.2K关注 0票数 4

-drawViewHierarchyInRect:afterScreenUpdates:是iOS 7中的一个fast way,用于拍摄视图层次结构的快照。

它可以拍摄快照,但分辨率为1倍。在iPhone 5S上,这些快照看起来像素化和模糊。我从中创建快照的视图不会被转换。

我不想模糊它,想要屏幕上看到的高质量。下面是我捕获它的方法:

代码语言:javascript
运行
复制
UIGraphicsBeginImageContext(self.bounds.size);
[self drawViewHierarchyInRect:self.bounds afterScreenUpdates:YES];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

我也试过了:

代码语言:javascript
运行
复制
UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, self.contentScaleFactor);

它仍然以较低的@1x质量呈现。

有没有其他方法可以配置图像上下文,使其分辨率为@2x?

EN

Stack Overflow用户

发布于 2014-02-04 19:04:03

正确的答案应该是:

代码语言:javascript
运行
复制
UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, 0.0f);
票数 14
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21550518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档