CIRandomGenerator过滤器不能应用于过滤器

问题描述 投票:0回答:1

当我尝试应用CIRandomGenerator时,我的代码返回null。当我进入过滤页面时,应用程序崩溃了,我正在使用目标c进行编码。

if([filterName isEqualToString:@"CIRandomGenerator"]){
        // parameters
  [filter  setValue:[[CIFilter filterWithName:@"CIRandomGenerator"] valueForKey:@"outputImage"] forKey:@"inputImage"];


 CIContext *context = [CIContext contextWithOptions:nil];
    CIImage *outputImage = [filter outputImage];
    CGImageRef cgImage = [context createCGImage:outputImage fromRect:[outputImage extent]];

    UIImage *result = [UIImage imageWithCGImage:cgImage];

    CGImageRelease(cgImage);

    return result;
objective-c filter core-image
1个回答
0
投票

CIRandomGenerator生成一个无限范围的图像。您需要在将结果渲染为CGImage之前裁剪结果,例如:

CIImage *outputImage = [[filter outputImage] imageByCroppingToRect: CGRectMake(0, 0, 500, 500)];
© www.soinside.com 2019 - 2024. All rights reserved.