因为项目中很多地方需要分享截屏截图,所以写了几个截屏方法与大家分享
截屏(按view来截取)
/**
* 截屏-
* isWathermark 是否带有水印-默认带有
* isSave 是否保存到相册-默认保存
* view 截图的view
*/
- (UIImage *)TDScreenCapture_isHaveWatermark:(BOOL)isWatermark isSavePhoto:(BOOL)isSave snapshotView:(UIView *)view
{
// 判断是否为retina屏, 即retina屏绘图时有放大因子
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]){
UIGraphicsBeginImageContextWithOptions(view.bounds.size, NO, [UIScreen mainScreen].scale);
} else {
UIGraphicsBeginImageContext(view.bounds.size);
}
[view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
// 保存到相册
if (isSave) {
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil);
}
//拼接水印
if (isWathermark) {
return [self addImage:image toImage:[UIIm