ios开发之滑动长图截全屏应用


最近做项目遇到要求截取图片长度超出手机屏幕,即可滑动的长图截屏,这里简单说一下解决思路:

当我们要截全屏时,将滑动视图的frame以及偏移量记录下来,然后将滑动视图偏移量设为0,frame改为滑动视图的

contentSize,然后生成图片进行保存,代码实现如下:

// 下面方法,第一个参数表示区域大小。第二个参数表示是否是非透明的。如果需要显示半透明效果,需要传NO,否则传YES。第三个参数就是屏幕密度了,调整清晰度。
    UIGraphicsBeginImageContextWithOptions(scroll.contentSize, YES, [UIScreen mainScreen].scale);
    
    CGPoint savedContentOffset = scroll.contentOffset;
    CGRect savedFrame = scroll.frame;
    scroll.contentOffset = CGPointZero;
    scroll.frame = CGRectMake(0, 0, scroll.contentSize.width, scroll.contentSize.height);
    [scroll.layer renderInContext: UIGraphicsGetCurrentContext()];
    image = UIGraphicsGetImageFromCurrentImageContext();
    scroll.contentOffset = savedContentOffset;
    scroll.frame = savedFrame;
    
    UIGraphicsEndImageContext();

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM