【发布时间】:2018-05-31 22:51:04
【问题描述】:
我无法将两个图像与CIFilter 组合在一起。这里出了什么问题?
以下代码创建一个UIImageView 并将其添加到视图中,然后将imageA 和imageB 的两个图像与CIFilter 组合在一起,并将合成输出到UIImageView。
但是,UIImageView 中没有显示合并的图像,它仍然是空白的。
问题:
- 在
UIImageView中显示合成图像的正确代码是什么?- 有没有更高效的方法可以将两个图像与
CIFilter结合起来?
代码:
let imageView = UIImageView()
imageView.frame = CGRect(x: 0, y: 0, width: view.bounds.width, height: view.bounds.height)
imageView.contentMode = .Center
view.addSubview(imageView)
let imageA = CIImage(image: UIImage(named:"imageA")!)
let imageB = CIImage(image: UIImage(named:"imageB")!)
let imageFilter = CIFilter(name: "CIAdditionCompositing")!
imageFilter.setValue(imageA, forKey: kCIInputImageKey)
imageFilter.setValue(imageB, forKey: kCIInputBackgroundImageKey)
if let imageCombined = imageFilter.outputImage {
let image = UIImage(CIImage: imageCombined)
imageView.image = image
}
【问题讨论】:
-
你做了什么调试?这段代码是否到达了设置图像视图的
image属性的行? -
@rmaddy 是的,代码运行到 image 属性。没有错误。
标签: ios swift optimization cifilter ciimage