1e41f4b71Sopenharmony_ci# EffectComponent (系统接口)
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci特效合并容器组件,用于子节点特效绘制的合并,实现特效的绘制性能优化。
4e41f4b71Sopenharmony_ci
5e41f4b71Sopenharmony_ci>  **说明:**
6e41f4b71Sopenharmony_ci>
7e41f4b71Sopenharmony_ci> - 该组件从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8e41f4b71Sopenharmony_ci>
9e41f4b71Sopenharmony_ci> - 本模块为系统接口。
10e41f4b71Sopenharmony_ci>
11e41f4b71Sopenharmony_ci> - 目前该组件仅支持子组件背景模糊效果的绘制合并优化。
12e41f4b71Sopenharmony_ci>
13e41f4b71Sopenharmony_ci> - 在对子组件的背景模糊特效进行绘制合并时,需要将子组件的backgroundBlurStyle(BlurStyle)属性替换成useEffect(true)。
14e41f4b71Sopenharmony_ci
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci## 子组件
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci可以包含子组件。
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ci## 接口
22e41f4b71Sopenharmony_ci
23e41f4b71Sopenharmony_ciEffectComponent()
24e41f4b71Sopenharmony_ci
25e41f4b71Sopenharmony_ci创建特效绘制合并组件,用于对子组件背景模糊特效的绘制合并。
26e41f4b71Sopenharmony_ci
27e41f4b71Sopenharmony_ci## 事件
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci不支持通用事件。
30e41f4b71Sopenharmony_ci
31e41f4b71Sopenharmony_ci## 属性
32e41f4b71Sopenharmony_ci
33e41f4b71Sopenharmony_ci支持通用属性,目前仅支持对backgroundBlurStyle属性做绘制合并优化。
34e41f4b71Sopenharmony_ci
35e41f4b71Sopenharmony_ci## 示例
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci```ts
38e41f4b71Sopenharmony_ci//Index.ets
39e41f4b71Sopenharmony_ci@Entry
40e41f4b71Sopenharmony_ci@Component
41e41f4b71Sopenharmony_cistruct Index {
42e41f4b71Sopenharmony_ci  build() {
43e41f4b71Sopenharmony_ci    Stack() {
44e41f4b71Sopenharmony_ci      Image($r("app.media.example"))
45e41f4b71Sopenharmony_ci        .autoResize(true)
46e41f4b71Sopenharmony_ci      EffectComponent() {
47e41f4b71Sopenharmony_ci        Column({ space: 20 }) {
48e41f4b71Sopenharmony_ci          // 使用backgroundBlurStyle进行模糊绘制
49e41f4b71Sopenharmony_ci          Text("Normal text with backgroundBlurStyle")
50e41f4b71Sopenharmony_ci            .textAlign(TextAlign.Center)
51e41f4b71Sopenharmony_ci            .fontSize(16)
52e41f4b71Sopenharmony_ci            .fontWeight(FontWeight.Medium)
53e41f4b71Sopenharmony_ci            .backgroundBlurStyle(BlurStyle.Thick)
54e41f4b71Sopenharmony_ci            .borderRadius(16)
55e41f4b71Sopenharmony_ci            .width('90%')
56e41f4b71Sopenharmony_ci            .height('48')
57e41f4b71Sopenharmony_ci
58e41f4b71Sopenharmony_ci          // 不进行模糊绘制
59e41f4b71Sopenharmony_ci          Text("Normal text without blur effect")
60e41f4b71Sopenharmony_ci            .textAlign(TextAlign.Center)
61e41f4b71Sopenharmony_ci            .fontSize(16)
62e41f4b71Sopenharmony_ci            .fontWeight(FontWeight.Medium)
63e41f4b71Sopenharmony_ci            .border({ width: 1 })
64e41f4b71Sopenharmony_ci            .borderRadius(16)
65e41f4b71Sopenharmony_ci            .width('90%')
66e41f4b71Sopenharmony_ci            .height('48')
67e41f4b71Sopenharmony_ci
68e41f4b71Sopenharmony_ci          // 使用useEffect进行模糊合并绘制,继承EffectComponent的模糊参数
69e41f4b71Sopenharmony_ci          Text("Normal text with useEffect blur 1")
70e41f4b71Sopenharmony_ci            .textAlign(TextAlign.Center)
71e41f4b71Sopenharmony_ci            .useEffect(true)
72e41f4b71Sopenharmony_ci            .fontSize(16)
73e41f4b71Sopenharmony_ci            .fontWeight(FontWeight.Medium)
74e41f4b71Sopenharmony_ci            .borderRadius(16)
75e41f4b71Sopenharmony_ci            .width('90%')
76e41f4b71Sopenharmony_ci            .height('48')
77e41f4b71Sopenharmony_ci
78e41f4b71Sopenharmony_ci          // 使用useEffect进行模糊合并绘制,继承EffectComponent的模糊参数
79e41f4b71Sopenharmony_ci          Text("Normal text with useEffect blur 2")
80e41f4b71Sopenharmony_ci            .textAlign(TextAlign.Center)
81e41f4b71Sopenharmony_ci            .useEffect(true)
82e41f4b71Sopenharmony_ci            .fontSize(16)
83e41f4b71Sopenharmony_ci            .fontWeight(FontWeight.Medium)
84e41f4b71Sopenharmony_ci            .borderRadius(16)
85e41f4b71Sopenharmony_ci            .width('90%')
86e41f4b71Sopenharmony_ci            .height('48')
87e41f4b71Sopenharmony_ci        }
88e41f4b71Sopenharmony_ci        .width('100%')
89e41f4b71Sopenharmony_ci      }
90e41f4b71Sopenharmony_ci      .backgroundBlurStyle(BlurStyle.Thin)
91e41f4b71Sopenharmony_ci    }
92e41f4b71Sopenharmony_ci    .backgroundColor(Color.Black)
93e41f4b71Sopenharmony_ci    .width('100%')
94e41f4b71Sopenharmony_ci    .height('100%')
95e41f4b71Sopenharmony_ci  }
96e41f4b71Sopenharmony_ci}
97e41f4b71Sopenharmony_ci```
98e41f4b71Sopenharmony_ci
99e41f4b71Sopenharmony_ci![zh-cn_image_effectcomponent](figures/zh-cn_image_effectcomponent.png)