【问题标题】:CIFilter filterWithName:keysAndValues: set keysAndValues from NSDictionaryCIFilter filterWithName:keysAndValues: 从 NSDictionary 设置 keysAndValues
【发布时间】:2012-07-24 20:41:32
【问题描述】:
嗨,我正在尝试做这样的事情:
NSMutableDictionary *param1 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"inputIntensity", [NSNumber numberWithFloat:0.8], nil];
[param1 setObject:file forKey:kCIInputImageKey];
CIFilter *filter = [CIFilter filterWithName:@"CISepiaTone" keysAndValues:param1];
显然它不起作用,那么,如何从已经存在的字典中填充 keysAndValues 呢?
谢谢!
【问题讨论】:
标签:
iphone
objective-c
ios
core-image
cifilter
【解决方案1】:
您应该使用最简单的构造方法 (filterWithName:) 并使用 [filter setValue:value forKey:key] 遍历现有字典的键来填充值。它只需要几行代码。
【解决方案2】:
你可以像这样使用字典:
NSMutableDictionary *param = [NSMutableDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithFloat:0.8],@"inputIntensity",imageView.image,@"inputImage",nil]
CIFilter *filter = [CIFilter filterWithName:@"CISepiaTone" keysAndValues:@"inputImage",[param objectForKey:@"inputImage"],@"inputIntensity",[param objectForKey:@"inputIntensity",nil]];