gradient - 我们如何在 SwiftUI 中使用渐变模糊形状?

标签 gradient blur linear-gradients

试图用渐变模糊我的圆圈,但不明白为什么它不起作用。有人有想法吗?或者这还不支持吗?

struct GradientExperiment: View {
var body: some View {
    VStack {
        //blur works
        Circle()
            .fill(Color(.blue))
            .frame(width: 50, height: 50)
            .blur(radius: 10)

        //blur does not work
        Circle()
            .fill(LinearGradient(gradient: Gradient(colors: [.blue,.red]), startPoint: .bottom, endPoint: .top))
            .frame(width: 50, height: 50)
            .blur(radius: 10)
    }
}

}

最佳答案

LinearGradient 添加蒙版并使用 Circle 作为蒙版:

LinearGradient(gradient: Gradient(colors: [.blue, .red]), startPoint: .bottom, endPoint: .top)
  .mask(
    Circle()
      .frame(width: 50, height: 50)
      .blur(radius: 10)
    )

Blurred Circle

关于gradient - 我们如何在 SwiftUI 中使用渐变模糊形状?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60195662/

相关文章:

html - 这些圆形进度条是如何填充的呢?

css - Angular 渐变与 CSS Webkit 渐变?

java - Android,立即模糊位图?

html - 是否可以使 HTML div 模糊而内部没有元素?

在渐变上半透明透明的 png 的 CSS 背景显示为白色背景

ios - CGGradient 在 iPad 1 和 2 上显示不正确

java - 将 RGB 存储在唯一变量中

unity-game-engine - Unity 着色器将具有相同 Material 的对象渲染到后续 GrabPasses

css - 为什么使用线性渐变渲染背景会有所不同?

css - Chrome 和 Safari 浏览器中的线性渐变