Uiimage 未考虑模糊效果的iOS7屏幕截图
我正在用这个代码截屏Uiimage 未考虑模糊效果的iOS7屏幕截图,uiimage,ios7,calayer,cgcontextref,Uiimage,Ios7,Calayer,Cgcontextref,我正在用这个代码截屏 - (UIImage *)screenshot { UIGraphicsBeginImageContext(self.bounds.size); [self.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();
- (UIImage *)screenshot {
UIGraphicsBeginImageContext(self.bounds.size);
[self.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
但是结果图像没有正确显示alpha和模糊效果
有没有办法解决这个问题?当你查看“RenderContext”的文档时,你会发现它在动画等方面有一些缺点。如果不需要直接拍摄图层的屏幕截图,可以试试这个
- (UIImage *)screenshot {
UIGraphicsBeginImageContextWithOptions(self.view.frame.size, YES, 0);
[self.view drawViewHierarchyInRect:self.view.frame afterScreenUpdates:NO];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}