2016-10-09 10 views
0

拡大質問this thread。私はCIGaussianBlurのソースとしてCIAffineClampの結果をどうやって渡すべきか分かりません。次のコードはうまく構築されますが、結果のイメージは生成されません。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 
} 

答えて

1

これと同じ問題であるように思わ:

CIGaussianBlur and CIAffineClamp on iOS 6

このお試しください:魅力のように働いた

let cgImage = context.createCGImage(result, from: ciImage.extent) 
+0

を。ご助力ありがとうございます。連絡先の詳細(電子メール/ gplus/skype)を共有していますので、このコードについていくつかお尋ねしますか? – Pono

+0

申し訳ありませんが、公開サイトを通じて私的な連絡先を作成していません。私はあなたの将来のQを解決しようとするか、または将来私を助けてくれるでしょう。あなたとあなたのアプリのために幸運。 – OOPer

関連する問題