Хорошо, используя coregraphics, я создаю изображение, которое позже будет использоваться в операции CGContextClipToMask
.Это выглядит примерно так:
UIImage *eyes = [UIImage imageNamed:@"eyes"];
UIImage *mouth = [UIImage imageNamed:@"mouth"];
UIGraphicsBeginImageContext(CGSizeMake(150, 150));
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBFillColor(context, 0, 0, 0, 1);
CGContextFillRect(context, bounds);
[eyes drawInRect:bounds blendMode:kCGBlendModeMultiply alpha:1];
[mouth drawInRect:bounds blendMode:kCGBlendModeMultiply alpha:1];
// how can i now get a CGImageRef here to use in a masking operation?
UIGraphicsEndImageContext();
Теперь, как вы можете видеть из комментария, мне интересно, как я на самом деле собираюсь использовать изображение, которое я построил.Причина, по которой я здесь использую основную графику, а не просто создаю UIImage, заключается в том, что прозрачность, которую я создаю, очень важна.Если я просто возьму UIImage из контекста, когда он используется в качестве маски, он будет применяться ко всему ... В дальнейшем у меня возникнут проблемы с использованием частично прозрачной маски с использованием этого метода?