【发布时间】:2017-01-04 10:57:26
【问题描述】:
现在已经在 swift 上工作了一段时间,但在处理这个 Core Image Framework 时遇到了麻烦。我能够成功地在图像上创建 CIFilter,但是我不确定如何删除它。图像放置在类似于 snapchat 相机屏幕的 UIView 上,然后有一个 imageview,它是预览图像的 uiview 的子视图。顺便说一句,同时使用最新版本的 Xcode 和 iOS。
这是应用黑白滤镜时的代码:
@IBAction func BW_Flt_Bt_Tapped(sender: UIButton) {
let beginImage = CIImage(image: imagePreview.image!)
let ciContext = CIContext(options: nil)
let filter = CIFilter(name: "CIPhotoEffectNoir")
var imgOrientation = imagePreview.image!.imageOrientation
var imgScale = imagePreview.image?.scale
filter!.setDefaults()
filter!.setValue(beginImage, forKey: kCIInputImageKey)
let filteredImageData = filter!.valueForKey(kCIOutputImageKey) as! CIImage
let filteredImageRef = ciContext.createCGImage(filteredImageData, fromRect: filteredImageData.extent)
imagePreview.image = UIImage(CGImage: filteredImageRef, scale: 1.0, orientation: UIImageOrientation.Right)
self.orgImgBt.hidden = false
self.orgImgL.hidden = false
BWFlt.hidden = true
BWLbl.hidden = true
}
-imagePreview 是 UIView 的子视图
接下来是我如何将图像改回来的代码
@IBAction func orgImgPressed(sender: UIButton) {
self.imagePreview.image = self.selctedImage
orgImgBt.hidden = true
orgImgL.hidden = true
`enter code here` BWFlt.hidden = false
`enter code here`BWLbl.hidden = false
print("button was pressed")
}
如果有人有任何建议,我将非常感激,谢谢!
【问题讨论】:
-
什么是
self.selectedImage?
标签: ios swift uiview cifilter ciimage