如何将两个或多个 CIImage 组合成另一个。我尝试使用 ciContext.drawImage。我如何从中获取 CGImage?我所理解的是,我正在写一个我应该能够从中获得图像的上下文。如果我理解有误,请告诉我。
let eaglContext = EAGLContext(API: .OpenGLES2)
let ciContext = CIContext(EAGLContext: eaglContext)
ciContext.drawImage(firstCIImage, inRect: firstRect, fromRect: secondRect)
ciContext.drawImage(secondCIImage, inRect: secondRect, fromRect: secondRect)
最佳答案
你可以尝试这样的事情:
var outputImage: CIImage?
let images : Array<CIImage> = [] // add all your CIImages that you'd like to combine
for image in images {
outputImage = outputImage == nil ? image : image.imageByCompositingOverImage(outputImage!)
}
var cgImage: CGImageRef
if let image = outputImage {
let eaglContext = EAGLContext(API: .OpenGLES2)
let ciContext = CIContext(EAGLContext: eaglContext)
cgImage = ciContext.createCGImage(image, fromRect: image.extent)
}
关于ios - 我如何结合两个或多个 CIImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31996715/