【发布时间】:2021-05-12 10:18:43
【问题描述】:
我正在尝试将图像背景添加到生成的 atec 代码中,到目前为止,我可以生成 aztec 代码,但在使用 CIBlendWithMask 过滤器时遇到问题,我不确定我到底做错了什么我相信用户选择的背景作为 kCIInputBackgroundImageKey 是正确的,并且作为 kCIInputImageKey 的 aztec 输出图像是正确的,我认为我出错的地方是 kCIInputMaskImageKey 但不完全确定为什么我需要这样做我认为 aztec 输出将是一个足够的掩码图像 -我是否需要选择颜色或其他东西才能将背景剪辑到阿兹台克图像?
CIFilter *aztecFilter = [CIFilter filterWithName:@"CIAztecCodeGenerator"];
CIFilter *colorFilter = [CIFilter filterWithName:@"CIFalseColor"];
[aztecFilter setValue:stringData forKey:@"inputMessage"];
[colorFilter setValue:aztecFilter.outputImage forKey:@"background"];
NSData* imageData = [[NSUserDefaults standardUserDefaults] objectForKey:@"usertheme"];
CIImage *image = [UIImage imageWithData:imageData].CIImage;
[colorFilter setValue:[CIColor colorWithCGColor:[[UIColor blackColor] CGColor]] forKey:@"inputColor0"];
[colorFilter setValue:[CIColor colorWithRed:1 green:1 blue:1 alpha:0] forKey:@"inputColor1"];
CIFilter *blendFilter = [CIFilter filterWithName:@"CIBlendWithMask"];
[blendFilter setValue:colorFilter.outputImage forKey:kCIInputImageKey];
[blendFilter setValue:image forKey:kCIInputBackgroundImageKey];
[blendFilter setValue:colorFilter.outputImage forKey:kCIInputMaskImageKey];
尝试创建类似的东西,但使用阿兹台克代码而不是 QR
【问题讨论】:
-
“为生成的阿兹台克代码添加图像背景” ...如果您显示“目标”图像的示例,将会有所帮助。
-
现在添加到帖子中:)
标签: ios objective-c filter mask core-image