HarmonyOS 如何实现View边缘模糊的效果

HarmonyOS  如何实现View边缘模糊的效果。

HarmonyOS
2024-09-25 12:59:54
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

请参考透明度渐变,demo如下:

注意渐变方案linearGradient和混色方案blendMode。

@Entry  
@Component  
struct ImageOpacityDemo {  
  build() {  
    Column() {  
      Stack() {  
        Column() {  
          Image($r("app.media.app_icon"))  
        }  
        .height("40%")  
  
        Column() {  
          Text("11111111111111111111111").blendMode(BlendMode.SRC_IN, BlendApplyType.OFFSCREEN).width("100%")  
          Text("11111111111111111111111").blendMode(BlendMode.SRC_IN, BlendApplyType.OFFSCREEN).width("100%")  
          Text("11111111111111111111111").blendMode(BlendMode.SRC_IN, BlendApplyType.OFFSCREEN).width("100%")  
          // 重复的Text  
          ...  
          Text("11111111111111111111111").blendMode(BlendMode.SRC_IN, BlendApplyType.OFFSCREEN).width("100%")  
        }.width('100%')  
        // Image($r("app.media.GenshinImpact"))  
        // .blendMode(BlendMode.SRC_IN, BlendApplyType.OFFSCREEN)  
        // .width('100%')  
        // .height('100%')  
      }  
      .clip(true)  
      .width('100%')  
      .height('40%')  
      .linearGradient({  
        angle: 180,  
        // rgba(0, 0, 0, 0) 表示一种完全透明的颜色,其中最后一个参数 alpha(透明度)值为 0,表示该颜色是完全透明的  
        colors: [['rgba(0, 0, 0, 0)', 0], ['rgba(0, 0, 0, 1)', 0.3],['rgba(0, 0, 0, 1)', 0.7],['rgba(0, 0, 0, 0)', 1]]  
      })  
      .blendMode(BlendMode.SRC_OVER, BlendApplyType.OFFSCREEN)  
    }  
  }  
  .width("100%")  
}  
}
分享
微博
QQ
微信
回复
2024-09-25 16:19:34
相关问题
图片模糊效果如何实现
755浏览 • 1回复 待解决
组件如何设置模糊效果
1852浏览 • 1回复 待解决
如何设置图片高斯模糊效果
3047浏览 • 3回复 待解决
arkts 什么时候可以实现模糊效果
3125浏览 • 1回复 待解决
如何实现组件边缘颜色渐变
1987浏览 • 1回复 待解决
如何为图片添加一个模糊效果
457浏览 • 2回复 待解决
HarmonyOS 怎么实现高斯模糊
568浏览 • 1回复 待解决
HarmonyOS 如何实现抽屉效果控件
49浏览 • 1回复 待解决