截取tableView图片防止不清晰

今天看到一条新闻一个男孩子相亲因为穿特步而被女孩子拒绝,突然就想上一次相亲自己穿的啥,好像也是特步,哦不对是李宁🤦‍♀️。

CGPoint savedContentOffset = self.tableView.contentOffset;
    CGRect savedFrame = self.tableView.frame;//这两句是为了防止不清晰

    UIImage *scrollViewImage = [TShopTools captureScreenScrollView:self.tableView];
    self.tableView.contentOffset = savedContentOffset;
    self.tableView.frame = savedFrame;//还有这两句是为了防止不清晰,在这里是为了是tableView在截取之后恢复原来的位置和offset
@interface TShopTools : NSObject
+ (UIImage *)captureScreenScrollView:(UIScrollView *)scrollView ;
@end
#import "TShopTools.h"
@implementation TShopTools

+ (UIImage *)captureScreenScrollView:(UIScrollView *)scrollView {

    scrollView.frame = CGRectMake(0, scrollView.frame.origin.y, scrollView.contentSize.width, scrollView.contentSize.height);
    UIGraphicsBeginImageContextWithOptions(scrollView.contentSize, YES, [UIScreen mainScreen].scale); //currentView 当前的view  创建一个基于位图的图形上下文并指定大小为
//    [scrollView drawViewHierarchyInRect:CGRectMake(0, 0, scrollView.contentSize.width, scrollView.contentSize.height) afterScreenUpdates:NO];

    [scrollView.layer renderInContext:UIGraphicsGetCurrentContext()];//renderInContext呈现接受者及其子范围到指定的上下文
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();//返回一个基于当前图形上下文的图片
    UIGraphicsEndImageContext();
    

    return image;
}
@end
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我有个特别不好的缺点就是会经常在情绪特别不好的时候,把所有的事情,所有的不好都通通想起来。比如今天因为婷姐得事情,...
    曾曾的麻麻阅读 169评论 0 0
  • 秋冬交替的世界,树木的枝叶已经刷刷掉落,开启了冬季的枯荣。这是城市街道的一棵树,如果没有看到枝叶的你是不是会有一种...
    九里归一阅读 531评论 0 2
  • 今天在百度上搜索如何避免碌碌无为,发现了一位网友的回答,认为具有较好的启示,转载于此。 1、最重要的一点是慢慢提升...
    红小兵兵阅读 679评论 0 0
  • 文丨清枫 我作为一个大三的学生,生活中有一些感悟,也告诫一下学弟学妹们,时间宝贵,珍惜大学里的时光吧 三载以来,一...
    郭清枫阅读 387评论 0 3