1

次のコードを使用して CIAdditionCompositing フィルターを設定しようとしています。

CIImage *imageOne = [CIImage imageWithCGImage:[UIImage imageNamed:@"picOne"].CGImage];
CIImage *imageTwo = [CIImage imageWithCGImage:[UIImage imageNamed:@"picTwo"].CGImage];

filter = [CIFilter filterWithName:@"CIAdditionCompositing"];
[filter setDefaults];
[filter setValue:imageOne forKey:kCIInputImageKey];
[filter setValue:imageTwo forKey:kCIInputBackgroundImageKey];

CIImage *imageResult  = [filter outputImage];
CGImageRef imageRef = [context createCGImage:imageResult fromRect:imageResult.extent];
_imageView.image = [UIImage imageWithCGImage:imageRef];

次のエラーが表示されます。

キャッチされていない例外 'NSUnknownKeyException' が原因でアプリを終了しています。

ライン上

[filter setValue:imageOne forKey:kCIInputImageKey];

この Core Image フィルタのセットアップで何が間違っていますか?

4

1 に答える 1

1

奇妙なことに、この方法は機能します...

filter = [CIFilter filterWithName:@"CIAdditionCompositing" keysAndValues:kCIInputImageKey, imageOne, kCIInputBackgroundImageKey, imageTwo, nil];

誰も違いを説明できますか?

于 2013-02-22T13:29:00.003 に答える