Я использую Swift для разработки приложения iOS с функцией камеры, и для этого требуется слой размытия над изображением камеры с отверстием посередине, как показано на рисунке ниже.Как добавить маску размытия с пользовательской формой над динамическим видом камеры в Swift?
Я пробовал несколько методов, но ни один из них не добавил эффект размытия, не закрывая отверстие. Я не нашел рабочих решений, потратив время на Google.
Может ли кто-нибудь пояснить, как я могу только размыть непереносимую часть изображения png, прикрепленного к представлению изображения?
Методы, которые я пытался:
Используйте встроенный в IOS 8 эффект размытия
let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Dark) let blurEffectView = UIVisualEffectView(effect: blurEffect) maskImage.addSubview(blurEffectView)
Используйте "CIGaussianBlur" Фильтр
var imageToBlur = CIImage(image: image) var blurfilter = CIFilter(name: "CIGaussianBlur") blurfilter.setValue(imageToBlur, forKey: "inputImage") var resultImage = blurfilter.valueForKey("outputImage") as! CIImage var blurredImage = UIImage(CIImage: resultImage) self.maskImage.image = blurredImage
Визу аль эффект, который я хочу иметь:
Кстати, текущий слой представляет собой формат PNG изображение с отверстие в середине, которое было прикреплено к представлению изображения над изображением камеры. –