ts-drawing-components-rect.md 3.6 KB
Newer Older
Z
zengyawen 已提交
1 2
# Rect

Z
zengyawen 已提交
3 4
矩形绘制组件。

T
third  
tianyu 已提交
5 6 7
>  **说明:**
>
>  该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
Z
zengyawen 已提交
8

Z
zengyawen 已提交
9 10

## 子组件
Z
zengyawen 已提交
11 12 13



Z
zengyawen 已提交
14 15 16

## 接口

L
fix doc  
luoying_ace_admin 已提交
17
Rect(value?: {width?: string | number,height?: string | number,radius?: string | number | Array<string | number>} |
L
luoying_ace_admin 已提交
18
  {width?: string | number,height?: string | number,radiusWidth?: string | number,radiusHeight?: string | number})
Z
zengyawen 已提交
19

20 21
**参数:**

22
| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 |
23
| -------- | -------- | -------- | -------- | -------- |
24 25 26 27 28
| width | string \| number | 否 | 0 | 宽度。 |
| height | string \| number | 否 | 0 | 高度。 |
| radius | string \| number \| Array<string \| number> | 否 | 0 | 圆角半径,支持分别设置四个角的圆角度数。 |
| radiusWidth | string \| number | 否 | 0 | 圆角宽度。 |
| radiusHeight | string \| number | 否 | 0 | 圆角高度。 |
Z
zengyawen 已提交
29 30 31 32


## 属性

L
luoying_ace_admin 已提交
33 34
除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性:

35
| 参数名称 | 参数类型 | 默认值 | 必填 | 参数描述 |
Z
zengyawen 已提交
36
| -------- | -------- | -------- | -------- | -------- |
37 38
| radiusWidth | string \| number | 0 | 否 | 圆角的宽度,仅设置宽时宽高一致。 |
| radiusHeight | string \| number | 0 | 否 | 圆角的高度,仅设置高时宽高一致。 |
L
luoying_ace_admin 已提交
39
| radius | string \| number \| Array<string \| number> | 0 | 否 | 圆角半径大小。 |
H
HelloCrease 已提交
40 41
| fill | [ResourceColor](ts-types.md) | Color.Black | 否 | 设置填充区域颜色。 |
| fillOpacity | number \| string \| [Resource](ts-types.md#resource类型) | 1 | 否 | 设置填充区域透明度。 |
42 43 44 45 46
| stroke | [ResourceColor](ts-types.md) | - | 否 | 设置边框颜色,不设置时,默认没有边框。 |
| strokeDashArray | Array<Length> | [] | 否 | 设置边框间隙。 |
| strokeDashOffset | number \| string | 0 | 否 | 边框绘制起点的偏移量。 |
| strokeLineCap | [LineCapStyle](ts-appendix-enums.md#linecapstyle) | LineCapStyle.Butt | 否 | 设置边框端点绘制样式。 |
| strokeLineJoin | [LineJoinStyle](ts-appendix-enums.md#linejoinstyle) | LineJoinStyle.Miter | 否 | 设置边框拐角绘制样式。 |
L
luoying_ace_admin 已提交
47
| strokeMiterLimit | number \| string | 4 | 否 | 设置锐角绘制成斜角的极限值。 |
48 49
| strokeOpacity | number \| string \| [Resource](ts-types.md#resource类型) | 1 | 否 | 设置边框透明度。 |
| strokeWidth | Length | 1 | 否 | 设置边框宽度。 |
L
luoying_ace_admin 已提交
50
| antiAlias | boolean | true | 否 | 是否开启抗锯齿效果。 |
Z
zengyawen 已提交
51 52 53


## 示例
Z
zengyawen 已提交
54

H
geshi  
HelloCrease 已提交
55 56
```ts
// xxx.ets
Z
zengyawen 已提交
57 58 59 60
@Entry
@Component
struct RectExample {
  build() {
61 62 63
    Column({ space: 10 }) {
      Text('normal').fontSize(11).fontColor(0xCCCCCC).width('90%')
      // 绘制90% * 50的矩形
Z
zengyawen 已提交
64
      Rect({ width: '90%', height: 50 })
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
        .fill(Color.Pink)
      // 绘制90% * 50的矩形框
      Rect()
        .width('90%')
        .height(50)
        .fillOpacity(0)
        .stroke(Color.Red)
        .strokeWidth(3)

      Text('with rounded corners').fontSize(11).fontColor(0xCCCCCC).width('90%')
      // 绘制90% * 80的矩形, 圆角宽高分别为40、20
      Rect({ width: '90%', height: 80 })
        .radiusHeight(20)
        .radiusWidth(40)
        .fill(Color.Pink)
      // 绘制90% * 80的矩形, 圆角宽高为20
      Rect({ width: '90%', height: 80 })
        .radius(20)
        .fill(Color.Pink)
    }.width('100%').margin({ top: 10 })
Z
zengyawen 已提交
85 86 87 88
  }
}
```

Z
zengyawen 已提交
89
![zh-cn_image_0000001174264386](figures/zh-cn_image_0000001174264386.png)