6

在我的应用程序中,我想用静止图像记录视图。有没有办法使用 AvCaptureSession 截取视图?我要做的是捕获视图的图像,然后使用所有图像制作该视图的视频。我也参考了这个链接 https://github.com/immortalLion/iPhoneScreenRecord/tree/master/ScreenCaptureViewTest。我知道我们可以使用 IOSurface 捕获屏幕截图,但我不想捕获整个屏幕,而是只想捕获视图。我想设置帧率和渲染良好的比例提前谢谢。

4

1 回答 1

0

这会将视图捕获为图像,您可以指定视图的框架。

- (UIImage *)captureView:(UIView *)view {
        CGRect screenRect = [[UIScreen mainScreen] bounds];

        UIGraphicsBeginImageContext(screenRect.size);

        CGContextRef ctx = UIGraphicsGetCurrentContext();
        [[UIColor blackColor] set];
        CGContextFillRect(ctx, screenRect);

        [view.layer renderInContext:ctx];

        UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();

        return newImage;
    }
于 2013-09-18T13:14:07.157 回答