iOS7截图不考虑模糊效果

时间:2013-10-03 07:14:39

标签: uiimage ios7 calayer cgcontextref

我正在使用此代码进行屏幕截图

- (UIImage *)screenshot {
    UIGraphicsBeginImageContext(self.bounds.size);
    [self.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return image;
}

但是生成的图像没有正确显示的alpha和模糊效果

任何解决此问题的方法?

1 个答案:

答案 0 :(得分:2)

当你查看“renderInContext”的文档时,你会发现它在Animations等方面有一些缺点。如果没有必要直接截取图层的截图

,请尝试使用它
- (UIImage *)screenshot {
    UIGraphicsBeginImageContextWithOptions(self.view.frame.size, YES, 0);
    [self.view drawViewHierarchyInRect:self.view.frame afterScreenUpdates:NO];
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return newImage;
}