/****************************截屏**************************************/
//MARK: 截屏
///截屏 View
func screenImageWithView(cutView: UIView)-> UIImage {
//截屏区域;是否透明;清晰度
var image = UIImage()
UIGraphicsBeginImageContextWithOptions(cutView.frame.size, true, UIScreen.main.scale)
cutView.layer.render(in: UIGraphicsGetCurrentContext()!)
image = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsGetCurrentContext()
return image
}
//MARK: 截屏scrollview
/// 截屏scrollview
func cutFullImageWithView(scrollView:UIScrollView) -> UIImage {
// 记录当前的scrollView的偏移量和坐标
let currentContentOffSet:CGPoint = scrollView.contentOffset
let currentFrame:CGRect = scrollView.frame;
// 设置为zero和相应的坐标
scrollView.contentOffset = CGPoint.zero
scrollView.frame = CGRect.init(x: 0, y: 0, width: scrollView.frame.size.width, height: scrollView.frame.size.height)
// 参数①:截屏区域 参数②:是否透明 参数③:清晰度
UIGraphicsBeginImageContextWithOptions(scrollView.contentSize, true, UIScreen.main.scale)
scrollView.layer.render(in: UIGraphicsGetCurrentContext()!)
let image:UIImage = UIGraphicsGetImageFromCurrentImageContext()!
// 重新设置原来的参数
scrollView.contentOffset = currentContentOffSet
scrollView.frame = currentFrame
UIGraphicsEndImageContext()
return image
}