gpt4 book ai didi

objective-c - 无法在 UIImage 上应用 inputSharpness

转载 作者:行者123 更新时间:2023-11-29 13:22:27 25 4
gpt4 key购买 nike

我在我的应用程序中使用了一堆 CIFilter 滤镜来调整亮度、饱和度等,它们工作正常。我在使用 inputSharpness 时遇到了一些问题。如果我触摸清晰度 slider ,图片就会消失。相关代码:

UIImage *aUIImage = [imageView image];
CGImageRef aCGImage = aUIImage.CGImage;
aCIImage = [CIImage imageWithCGImage:aCGImage];

//Create context
context = [CIContext contextWithOptions:nil];
sharpFilter = [CIFilter filterWithName:@"CIAttributeTypeScalar" keysAndValues: @"inputImage", aCIImage, nil];

....

- (IBAction)sharpSliderChanged:(id)sender
{

//Set filter value
[sharpFilter setValue:[NSNumber numberWithFloat:sharpSlider.value] forKey:@"inputSharpness"];

//Convert CIImage to UIImage
outputImage = [sharpFilter outputImage];
CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]];
newUIImage = [UIImage imageWithCGImage:cgimg];
CGImageRelease(cgimg);

//add image to imageView
[imageView setImage:newUIImage];

}

最佳答案

我读过一篇有类似问题的帖子,可能的解决方案是为您要提供的 UIImage 效果添加一个类别。这里唯一的区别是您应该使用 CIColorControls 参数之一:inputSharpnessCISharpenLuminance 过滤器。

回到您的问题:从您的评论看来,您对如何初始化过滤器有一些疑问。我看一下 official documentation我会在初始化阶段使用 CISharpenLuminance 代替。不过它仅在 ios 6 中可用。

编辑就像我说的,如果你想坚持核心形象,你想要的功能只能在 iOS 6 上使用。我可以推荐您使用第三方库:GPU library如果您想与 iOS 5 兼容,请来自 bradlarson。

关于objective-c - 无法在 UIImage 上应用 inputSharpness,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14070181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com