0

我会将模糊效果应用于 CameraOverlayController。我找到了 FXBlurView 项目。因此,我创建了一个 UIImagePickerViewController 并在 viewDidLoad 中尝试了以下代码:

self.sourceType =
        UIImagePickerControllerSourceTypeCamera;
        self.mediaTypes = @[(NSString *) kUTTypeImage];
        self.allowsEditing = NO;
        self.showsCameraControls = NO;
        CGRect myFrame = CGRectMake(0, 0, 200, 480);
        UIImageView *overlay = [[UIImageView alloc] myFrame];
        UIImageView *testImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"iconExample"]];

        _blurView = [[FXBlurView alloc] initWithFrame:rect];
        _blurView.blurRadius = 6.0;
        _blurView.dynamic =YES;
        [overlay addSubview:testImage];
        [testImage addSubview:_blurView];
        self.cameraOverlayView = overlay;

但是我有一个问题......结果图像是这个......

在此处输入图像描述

在这张图片中,我看到了带有模糊效果的正确绿色图标……但是在有蓝色的地方,我看不到带有模糊效果的相机图像……有什么建议吗?

4

2 回答 2

1

很抱歉,这种方法不起作用,该库依赖于 RenderToContext:,它不适用于相机预览。最好的办法是编写自定义相机代码并自己进行模糊处理。

请参阅苹果的 Rosy Writer 示例代码。

于 2014-02-11T16:47:11.000 回答
1

遵循本教程应该会告诉您您需要了解的内容:

http://www.raywenderlich.com/60968/ios-7-blur-effects-gpuimage

他展示了如何使用 GPU-Image 框架,您可以模糊实时视频源

于 2014-02-11T17:00:36.677 回答