因为一个项目中需要进行动态截图,然后进行高斯效果。
结果却发现, 有的地方,背景图明明不是白色或者黑色的, 但截出来的图却要么是白色的,或者黑色的。经反复研究发现原因是半透明图干扰所致。所以下次遇到这种情况,多检查一下是否有半透明的即可以排除这个问题。
除截图代码。
UIGraphicsBeginImageContext(CGSizeMake(SCREEN_WIDTH, SCREEN_HEIGHT));
[[[UIApplication sharedApplication]keyWindow].layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImage *oriImg = [UIImage imageWithCGImage:CGImageCreateWithImageInRect([img CGImage], CGRectMake(SCREEN_WIDTH-320, 0, 320, SCREEN_HEIGHT))];