Как размыть часть представления в SwiftUI

Я хочу размыть часть изображения камеры в SwiftUI. Как размытая рамка.

Моя идея состояла в том, чтобы создать модификатор для обзора камеры, как в приведенном ниже коде. Однако, когда я применяю модификатор, размытое содержимое content.blur(radius: 7)в настоящее время обрезается слишком!

Не могли бы вы помочь мне понять, почему это не работает?

      struct MaskedCameraBlur: ViewModifier {
    // This is just the store in which the cropArea is saved
    @EnvironmentObject var dataStore : MyDataStore

    func body(content: Content) -> some View {
         ​​ZStack {
            ​​content.blur(radius: 7) // this should not be clipped 
            ​​content.clipShape(Rectangle().path(in: dataStore.cropArea))
         ​​}
    }
}
extension View {
  func maskedCameraBlur() -> some View {
    self.modifier(MaskedCameraBlur())
  }
}

0 ответов

Другие вопросы по тегам