我正在研究基于GPUImageView的应用程序。我已正确实现了所有功能,但我无法使用GPUImageview捕获屏幕截图。
在这里,我还在我的Github上附加了演示。
注意:我尝试使用 renderInContext 截取屏幕截图,但对我没用。
答案 0 :(得分:5)
正如我在您的问题中所看到的,您使用了GPUImageview。和GPUImageview使用openGL,因此,您可以使用UIGraphicsBeginImageContextWithOptions
来实现目标。
您可以使用此方法来实现目标。
- (UIImage *)snapshot:(UIView *)view
{
UIGraphicsBeginImageContextWithOptions(view.bounds.size, YES, 0);
[view drawViewHierarchyInRect:view.bounds afterScreenUpdates:YES];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
有关更多信息,请单击下面的链接。
On iOS 7 and later, how do I take a snapshot of my view and save the result in a UIImage?