长图分享(swift)

有段时间没有渲染我的主页了,那么今天话题就我最近做的分享相关部分展开吧。
这块最主要的逻辑点就是将scroll类型的视图上的Content视图展示出来,将以长图形式在微信、QQ等平台上得以分享。
长话不说,将对应的代码展示给大家看吧:

///分类-scrollView类型的Content展示截图处理
extension UIScrollView {
    var captureLongImage: UIImage? {
        
        var image: UIImage? = nil
        let savedContentOffset = contentOffset
        let savedFrame = frame
        
        contentOffset = .zero
        frame = CGRect(x: 0, y: 0,
                       width: contentSize.width,
                       height: contentSize.height)
        
        UIGraphicsBeginImageContext(frame.size)
        UIGraphicsBeginImageContextWithOptions(
            CGSize(width: frame.size.width,
                   height: frame.size.height),
            false,
            UIScreen.main.scale)
        layer.render(in: UIGraphicsGetCurrentContext()!)
        image = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        
        print("contentSize == \(contentSize)")
        contentOffset = savedContentOffset
        frame = savedFrame
        return image
        
    }
}

如上就是对scrollView类型的截图成长图的处理,希望能帮助到大家。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容