• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# CanvasGradient对象
2
3渐变对象。
4
5>  **说明:**
6>
7>  从 API Version 8 开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8
9
10
11## addColorStop
12
13addColorStop(offset: number, color: string): void
14
15设置渐变断点值,包括偏移和颜色。
16
17从API version 9开始,该接口支持在ArkTS卡片中使用。
18
19
20**参数:**
21
22| 参数     | 类型     | 必填   | 默认值       | 描述                           |
23| ------ | ------ | ---- | --------- | ---------------------------- |
24| offset | number | 是    | 0         | 设置渐变点距离起点的位置占总体长度的比例,范围为0到1。 |
25| color  | string | 是    | '#ffffff' | 设置渐变的颜色。颜色格式参考[ResourceColor](ts-types.md#resourcecolor)中string类型说明                     |
26
27
28**示例:**
29
30  ```ts
31// xxx.ets
32@Entry
33@Component
34struct Page45 {
35  private settings: RenderingContextSettings = new RenderingContextSettings(true)
36  private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings)
37
38  build() {
39    Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
40      Canvas(this.context)
41        .width('100%')
42        .height('100%')
43        .backgroundColor('#ffff00')
44        .onReady(() => {
45          var grad = this.context.createLinearGradient(50, 0, 300, 100)
46          grad.addColorStop(0.0, '#ff0000')
47          grad.addColorStop(0.5, '#ffffff')
48          grad.addColorStop(1.0, '#00ff00')
49          this.context.fillStyle = grad
50          this.context.fillRect(0, 0, 400, 400)
51        })
52    }
53    .width('100%')
54    .height('100%')
55  }
56}
57  ```
58  ![zh-cn_image_0000001194032516](figures/zh-cn_image_0000001194032516.png)
59
60