1e41f4b71Sopenharmony_ci# ImageData 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ciImageData对象可以存储canvas渲染的像素数据。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明:** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> 从 API Version 8 开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 8e41f4b71Sopenharmony_ci 9e41f4b71Sopenharmony_ci## 接口 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ciconstructor(width: number, height: number, data?: Uint8ClampedArray, unit?: LengthMetricsUnit); 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci创建ImageData时,宽高不超过16384px,最大面积不超过16000px*16000px,超过最大面积则无法正常绘制。当创建面积超过536870911px时,返回值的width和height均为0px,data为undefined。 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci**卡片能力:** 从API version 9开始,该接口支持在ArkTS卡片中使用。 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci**参数:** 22e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 23e41f4b71Sopenharmony_ci| ------ | ----- | ----- | ----- | 24e41f4b71Sopenharmony_ci| width | number |是| 矩形区域宽度,默认单位为vp。 | 25e41f4b71Sopenharmony_ci| height | number |是| 矩形区域高度,默认单位为vp。| 26e41f4b71Sopenharmony_ci| data | Uint8ClampedArray |否| 一维数组,保存了相应的颜色数据,数据值范围为0到255。 | 27e41f4b71Sopenharmony_ci| unit<sup>12+</sup> | [LengthMetricsUnit](../js-apis-arkui-graphics.md#lengthmetricsunit12) | 否 | 用来配置ImageData对象的单位模式,配置后无法动态更改,配置方法同[CanvasRenderingContext2D](ts-canvasrenderingcontext2d.md#lengthmetricsunit12)。<br>默认值:DEFAULT。 | 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci## 属性 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci**卡片能力:** 从API version 9开始,该接口支持在ArkTS卡片中使用。 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 36e41f4b71Sopenharmony_ci 37e41f4b71Sopenharmony_ci| 名称 | 类型 | 只读 | 可选 | 描述 | 38e41f4b71Sopenharmony_ci| ------ | -------- | --------- | ---------- | ------------------------------ | 39e41f4b71Sopenharmony_ci| width | number | 是 | 否 | 矩形区域实际像素宽度。<br>单位为px。 | 40e41f4b71Sopenharmony_ci| height | number | 是 | 否 | 矩形区域实际像素高度。<br>单位为px。 | 41e41f4b71Sopenharmony_ci| data | Uint8ClampedArray | 是 | 否 | 一维数组,保存了相应的颜色数据,数据值范围为0到255。 | 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci> **说明:** 44e41f4b71Sopenharmony_ci> 45e41f4b71Sopenharmony_ci> 可使用[px2vp](ts-pixel-units.md#像素单位转换)接口进行单位转换。 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci**示例:** 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci ```ts 50e41f4b71Sopenharmony_ci // xxx.ets 51e41f4b71Sopenharmony_ci @Entry 52e41f4b71Sopenharmony_ci @Component 53e41f4b71Sopenharmony_ci struct Translate { 54e41f4b71Sopenharmony_ci private settings: RenderingContextSettings = new RenderingContextSettings(true) 55e41f4b71Sopenharmony_ci private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings) 56e41f4b71Sopenharmony_ci private img:ImageBitmap = new ImageBitmap("common/images/1234.png") 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci build() { 59e41f4b71Sopenharmony_ci Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) { 60e41f4b71Sopenharmony_ci Canvas(this.context) 61e41f4b71Sopenharmony_ci .width('100%') 62e41f4b71Sopenharmony_ci .height('100%') 63e41f4b71Sopenharmony_ci .backgroundColor('#ffff00') 64e41f4b71Sopenharmony_ci .onReady(() =>{ 65e41f4b71Sopenharmony_ci this.context.drawImage(this.img,0,0,130,130) 66e41f4b71Sopenharmony_ci let imagedata = this.context.getImageData(50,50,130,130) 67e41f4b71Sopenharmony_ci this.context.putImageData(imagedata,150,150) 68e41f4b71Sopenharmony_ci }) 69e41f4b71Sopenharmony_ci } 70e41f4b71Sopenharmony_ci .width('100%') 71e41f4b71Sopenharmony_ci .height('100%') 72e41f4b71Sopenharmony_ci } 73e41f4b71Sopenharmony_ci } 74e41f4b71Sopenharmony_ci ``` 75e41f4b71Sopenharmony_ci 76e41f4b71Sopenharmony_ci  77e41f4b71Sopenharmony_ci 78