• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ImageBitmap
2
3ImageBitmap对象可以存储canvas渲染的像素数据。
4
5>  **说明:**
6>
7>  从 API Version 8 开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8
9## 接口
10
11ImageBitmap(src: string)
12
13从API version 9开始,该接口支持在ArkTS卡片中使用。
14
15**参数:**
16
17| 参数名  | 参数类型   | 必填   | 默认值  | 参数描述                                     |
18| ---- | ------ | ---- | ---- | ---------------------------------------- |
19| src  | string | 是    | -    | 图片的数据源支持本地图片。<br>1、string格式用于加载本地图片,例如ImageBitmap("common/images/example.jpg"),图片加载路径的起点为ets文件夹。<br/>2、支持本地图片类型:bmp、jpg、png、svg和webp类型。<br/>**说明:**<br/>- ArkTS卡片上不支持`http://`等网络相关路径前缀、`datashare://`路径前缀以及`file://data/storage`路径前缀的字符串。 |
20
21
22
23## 属性
24
25| 属性     | 类型     | 描述                                       |
26| ------ | ------ | ---------------------------------------- |
27| width | number | 只读属性,ImageBitmap的像素宽度,单位为vp。<br/>从API version 9开始,该接口支持在ArkTS卡片中使用。 |
28| height | number | 只读属性,ImageBitmap的像素高度,单位为vp。<br/>从API version 9开始,该接口支持在ArkTS卡片中使用。 |
29
30**示例:**
31
32  ```ts
33  // xxx.ets
34  @Entry
35  @Component
36  struct ImageExample {
37    private settings: RenderingContextSettings = new RenderingContextSettings(true)
38    private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings)
39    private img:ImageBitmap = new ImageBitmap("common/images/example.jpg")
40
41    build() {
42      Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
43        Canvas(this.context)
44          .width('100%')
45          .height('100%')
46          .backgroundColor('#ffff00')
47          .onReady(() =>{
48            this.context.drawImage( this.img,0,0,500,500,0,0,400,200)
49        })
50      }
51      .width('100%')
52      .height('100%')
53    }
54  }
55  ```
56
57  ![zh-cn_image_0000001194352442](figures/zh-cn_image_0000001194352442.png)
58
59
60
61## 方法
62
63
64### close
65
66close()
67
68释放ImageBitmap对象相关联的所有图形资源,并将ImageBitmap对象的宽高置为0。
69
70从API version 9开始,该接口支持在ArkTS卡片中使用。