Фильтр CIRandomGenerator не может быть применен к фильтру - PullRequest
0 голосов
/ 09 марта 2019

Мой код возвращает ноль, когда я пытаюсь применить CIRandomGenerator. Приложение просто падает, когда я вхожу в страницу фильтра, я кодирую, используя цель 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;

1 Ответ

0 голосов
/ 11 марта 2019

CIRandomGenerator создает изображение с бесконечной протяженностью.Вам нужно обрезать результат, прежде чем вы сможете отобразить его в CGImage, например:

CIImage *outputImage = [[filter outputImage] imageByCroppingToRect: CGRectMake(0, 0, 500, 500)];
...