如何从上下文绘制的图像中获取 CGImageRef?
Posted
技术标签:
【中文标题】如何从上下文绘制的图像中获取 CGImageRef?【英文标题】:How to get a CGImageRef from Context-Drawn Images? 【发布时间】:2011-12-26 16:57:10 【问题描述】:好的,使用 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,当它用作蒙版时,它只会应用于所有内容......更重要的是,使用这种方法使用部分透明的蒙版会有什么问题吗?
【问题讨论】:
Drawing into CGImageRef 的可能重复项 【参考方案1】:CGImageRef result = CGBitmapContextCreateImage(UIGraphicsGetCurrentContext());
【讨论】:
【参考方案2】:你可以调用the UIGraphicsGetImageFromCurrentImageContext
function,它会返回一个UIImage对象。您可以保留并使用 UIImage,也可以向它索取 CGImage。
【讨论】:
以上是关于如何从上下文绘制的图像中获取 CGImageRef?的主要内容,如果未能解决你的问题,请参考以下文章