0

我是 ios 开发新手并尝试使用代码过滤器...

imgAnimation=[[UIImageView alloc]initWithFrame:frame];
imgAnimation.animationImages=_arrimg;
//animationImages=animationImages;
imgAnimation.contentMode=UIViewContentModeScaleAspectFit;

imgAnimation.animationDuration = 2.0f;
imgAnimation.animationRepeatCount = 0;
[imgAnimation startAnimating];
[self.view addSubview:imgAnimation];

我的动画工作正常,但是我如何应用过滤器,就像sepia, grey scale我找到了很多教程一样,但它们是针对单个图像的,请帮助 ???

4

3 回答 3

0

示例代码:

+(UIImage *) applyFilterToImage: (UIImage *)inputImage
{
    CIImage *beginImage = [CIImage imageWithCGImage:[inputImage CGImage]];
    CIContext *context = [CIContext contextWithOptions:nil];

    CIFilter *filter = [CIFilter filterWithName:@"CISepiaTone" keysAndValues: kCIInputImageKey, beginImage, @"inputIntensity", [NSNumber numberWithFloat:0.8], nil];
    CIImage *outputImage = [filter outputImage];

    CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]];
    UIImage *newImg = [UIImage imageWithCGImage:cgimg];

    CGImageRelease(cgimg);
    return newImg;
}
于 2013-06-06T13:33:31.113 回答
0

图像效果的GPU图像开源框架。

从这里下载源代码:-

希望它对你有帮助:)

于 2013-06-06T13:33:43.460 回答
0

基本上,您必须使用过滤器预加载所有图像。然后将它们加载到一个数组中并将其设置为 animationImages 属性。

要获得各种过滤器,您可以从github参考这个项目

于 2013-06-06T13:05:18.693 回答