objective-c - 一个过滤器正在重置另一个过滤器。不能同时应用它们

标签 objective-c ios

我在一张图像上使用了 2 个滤镜。这个问题很容易理解,如果我移动一个 slider ,滤镜将正常应用,但当我移动另一个 slider 时,图片将重置为原始 _tempImage。 我尝试将 _justNowImage.image = QuickFilteredImage; 替换为 _tempImage = QuickFilteredImage;,但结果是过滤器变得疯狂。

谢谢

   - (IBAction)sharpenSliderChanged:(id)sender
    {   
        GPUImageSharpenFilter *sharpenFilter = [[GPUImageSharpenFilter alloc] init];
        [sharpenFilter setSharpness:sharpenSlider.value];
        UIImage *quickFilteredImage = [sharpenFilter imageByFilteringImage: _tempImage];
        _justNowImage.image = quickFilteredImage;
    }

    - (IBAction)exposureSliderChanged:(id)sender
    {
        GPUImageExposureFilter *exposureFilter = [[GPUImageExposureFilter alloc] init];
        [exposureFilter setExposure:exposureSlider.value];
        UIImage *quickFilteredImage = [exposureFilter imageByFilteringImage: _tempImage];
        _justNowImage.image = quickFilteredImage;
    }

最佳答案

    UIImage *quickFilteredImage = [exposureFilter imageByFilteringImage: _tempImage];

您仅对原始图像应用不同的滤镜......即 _tempImage

将这些行添加到两个方法的末尾

_tempImage = quickFilteredImage

关于objective-c - 一个过滤器正在重置另一个过滤器。不能同时应用它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14080922/

相关文章:

ios - 在iPhone锁定屏幕上显示CFUserNotification

ios - 查找字符串的宽度(快速)

ios - 如何添加新设备进行测试并制作新证书进行测试

objective-c - UIViewController 的 View 有奇怪的 20px y 边距

objective-c - 有什么工具可以在 iOS 应用程序运行时生成对象图吗?

ios - 实现 AdMob SDK - iPhone

ios - 在 Admob 横幅上显示 UIButton?

ios - 错误 : indexing expression is invalid because subscript type 'char *(*)(const char *, int)' is not an integral or OBjective-C pointer type

iphone - 创建地址簿副本

ios - 如何检查文件是否在 objective-c 中成功保存