0
Размещенный вопрос от this thread. Я не уверен, как передать результат от CIAffineClamp
в качестве источника для CIGaussianBlur
. Следующий код строит просто отлично, но не дает результирующего изображения.MacOS и Swift 3 - как передать результат от одного фильтра к другому
guard
let blurFilter = CIFilter(name: "CIGaussianBlur"),
let clampFilter = CIFilter(name: "CIAffineClamp"),
let imageURL = Bundle.main.url(forResource: "my-image", withExtension: "png"),
let ciImage = CIImage(contentsOf: imageURL)
else {
return
}
let transform = AffineTransform.identity
clampFilter.setValue(ciImage, forKey: "inputImage")
clampFilter.setValue(NSAffineTransform(transform: transform), forKey: "inputTransform")
blurFilter.setValue(clampFilter.outputImage, forKey: kCIInputImageKey)
blurFilter.setValue(10, forKey: kCIInputRadiusKey)
guard
let result = blurFilter.outputImage,
let cgImage = context.createCGImage(result, from: result.extent)
else {
// this guard fails in here
return
}
Работал как шарм. Большое спасибо за Вашу помощь. Не возражаете ли вы поделиться своими контактными данными (email/gplus/skype), чтобы я мог рассказать вам несколько вещей об этом коде? – Pono
Извините, но я не делаю никаких личных контактов через общедоступные сайты. Я постараюсь решить ваши будущие вопросы, или вы поможете мне в будущем. Удачи вам и вашему приложению. – OOPer