diff --git a/zh-cn/application-dev/reference/apis/js-apis-image.md b/zh-cn/application-dev/reference/apis/js-apis-image.md index b51c3585d6d882e09cf5ca5303ad9aefd936b3e1..7d0821f27780f9c4177cf699adb0b1c4a5860aa6 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-image.md +++ b/zh-cn/application-dev/reference/apis/js-apis-image.md @@ -944,6 +944,335 @@ release(): Promise\ }).catch((error)=>{}) ``` +## ImageReceiver8+ + +图像接收类,用于获取组件端口号,接收最新的图片和读取下一张图片,以及释放 ImageReceiver 实例。在调用各方法前需要先创建 ImageReceiver 实例。 + +### 属性 + +| 名称 | 类型 | 可读 | 可写 | 说明 | +| -------- | ---------------------------- | ---- | ---- | ------------------------------------------------------------ | +| size | [Size](#Size) | 是 | 否 | 图片大小。
**系统能力:**SystemCapability.Multimedia.Image.ImageReceiver | +| capacity | number | 是 | 否 | 同时访问的图像数。
**系统能力:**SystemCapability.Multimedia.Image.ImageReceiver | +| format | [ImageFormat](#ImageFormat8) | 是 | 否 | 图像格式。
**系统能力:**SystemCapability.Multimedia.Image.ImageReceiver | + +### getReceivingSurfaceId8+ + +getReceivingSurfaceId(callback: AsyncCallback): void + +获取一个端口id,可用于设置为 Camera 或其他组件可以接收端口,并使用callback返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| -------- | --------------------- | ---- | ------------------------ | +| callback | AsyncCallback | 是 | 使用callback返回端口id。 | + +**示例:** + +```js + receiver.getReceivingSurfaceId((err, id) => {}); +``` + +### getReceivingSurfaceId8+ + +getReceivingSurfaceId(): Promise + +获取一个端口id,可用于设置为 Camera 或其他组件可以接收端口,并使用promise返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**返回值:** + +| 类型 | 说明 | +| --------------- | ---------------- | +| Promise | 异步返回端口id。 | + +**示例:** + +```js +receiver.getReceivingSurfaceId().then( id => { + }).catch(error => { + }) +``` + +### readLatestImage8+ + +readLatestImage(callback: AsyncCallback): void + +从 ImageReceiver读取最新的图片,并使用callback返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| -------- | ------------------------------- | ---- | ---------------------- | +| callback | AsyncCallback<[Image](#Image8)> | 是 | callback返回最新图像。 | + +**示例:** + +```js + receiver.readLatestImage((err, img) => { }); +``` + +### readLatestImage8+ + +readLatestImage(): Promise + +从 ImageReceiver读取最新的图片,并使用promise返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**返回值:** + +| 类型 | 说明 | +| ------------------------- | ------------------ | +| Promise<[Image](#Image8)> | 异步返回最新图片。 | + +**示例:** + +```js +receiver.readLatestImage().then(img => {}) + .catch(error => {}) +``` + +### readNextImage8+ + +readNextImage(callback: AsyncCallback): void + +从 ImageReceiver读取下一张图片,并使用callback返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| -------- | ------------------------------- | ---- | ------------------------ | +| callback | AsyncCallback<[Image](#Image8)> | 是 | callback返回下一张图片。 | + +**示例:** + +```js +receiver.readNextImage((err, img) => {}); +``` + +### readNextImage8+ + +readNextImage(): Promise + +从 ImageReceiver读取下一张图片,并使用promise返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**返回值:** + +| 类型 | 说明 | +| ------------------------- | -------------------- | +| Promise<[Image](#Image8)> | 异步返回下一张图片。 | + +**示例:** + +```js + receiver.readNextImage().then(img => { + }).catch(error => { + }) +``` + +### on8+ + +on(type: 'imageArrival', callback: AsyncCallback): void + +接收图片时注册回调。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| -------- | ------------------- | ---- | ---------------- | +| type | imageArrival | 是 | 注册事件的类型。 | +| callback | AsyncCallback | 是 | 注册的事件回调。 | + +**示例:** + +```js + receiver.on('imageArrival', () => {}) +``` + +### release8+ + + release(callback: AsyncCallback): void + +释放ImageReceiver实例并使用回调返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| -------- | ------------------- | ---- | -------------- | +| callback | AsyncCallback | 是 | 返回操作结果。 | + +**示例:** + +```js + receiver.release(() => {}) +``` + +### release8+ + +release(): Promise + +释放ImageReceiver实例并使用promise返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.ImageReceiver + +**返回值:** + +| 类型 | 说明 | +| ------------- | ----------------------- | +| Promise | 用promise返回操作结果。 | + +**示例:** + +```js + receiver.release().then(() => {}) + .catch(error => {}) +``` + +## image.createImageReceiver8+ + + createImageReceiver(width: number, height: number, format: number, capacity: number): ImageReceiver + +通过宽、高、图片格式、容量创建imagereceiver实例。 + +**系统能力:**SystemCapability.Multimedia.Image.ImageReceiver + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| -------- | ------ | ---- | ------------------------------------- | +| width | number | 是 | imagereceiver将生成的图像的默认宽度。 | +| height | number | 是 | imagereceiver将生成的图像的默认高度。 | +| format | number | 是 | imagereceiver将生成的图像格式。 | +| capacity | number | 是 | 同时访问的最大图像数。 | + +**返回值:** + +| 类型 | 说明 | +| ------------- | ----------------------------------------- | +| ImageReceiver | 如果操作成功,则返回 ImageReceiver 实例。 | + +**示例:** + +```js +var receiver = image.createImageReceiver(8192, 8, 4, 8) +``` + +## Image8+ + +提供基本的图像操作,包括获取图像信息、读写图像数据。 + +### 属性 + +| 名称 | 类型 | 可读 | 可写 | 说明 | +| -------- | ------------------ | ---- | ---- | ------------------------------------------------------------ | +| clipRect | [Region](#Region7) | 是 | 是 | 设置或获取要裁剪的图像区域。
**系统能力:** SystemCapability.Multimedia.Image.Core | +| size | [Size](#Size) | 是 | 否 | 图像大小。
**系统能力:** SystemCapability.Multimedia.Image.Core | +| format | number | 是 | 否 | 图像格式。
**系统能力:** SystemCapability.Multimedia.Image.Core | + +### getComponent8+ + +getComponent(componentType: ComponentType, callback: AsyncCallback): void + +从图像中获取组件缓冲区并使用callback返回结果。 + +**系统能力:** SystemCapability.Multimedia.Image.Core + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| ------------- | --------------------------------------- | ---- | -------------------- | +| componentType | [ComponentType](#ComponentType8) | 是 | 图像的组件类型。 | +| callback | AsyncCallback<[Component](#Component8)> | 是 | 用于返回组件缓冲区。 | + +**示例:** + +```js + img.getComponent(4, (err, component) => {}) +``` + +### getComponent8+ + +getComponent(componentType: ComponentType): Promise + +从图像中获取组件缓冲区并使用promise方式返回结果。 + +**系统能力:**SystemCapability.Multimedia.Image.Core + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| ------------- | -------------------------------- | ---- | ---------------- | +| componentType | [ComponentType](#ComponentType8) | 是 | 图像的组件类型。 | + +**返回值:** + +| 类型 | 说明 | +| --------------------------------- | --------------------------------- | +| Promise<[Component](#Component8)> | 用于返回组件缓冲区的promise实例。 | + +**示例:** + +```js +img.getComponent(4).then(component => { }) +``` + +### release8+ + +release(callback: AsyncCallback): void + +释放当前图像以接收另一个图像并使用callback返回结果。 + +**系统能力:**SystemCapability.Multimedia.Image.Core + +**参数:** + +| 名称 | 类型 | 必填 | 说明 | +| -------- | ------------------- | ---- | -------------- | +| callback | AsyncCallback | 是 | 返回操作结果。 | + +**示例:** + +```js +img.release(() =>{ }) +``` + +### release8+ + +release(): Promise + +释放当前图像以接收另一个图像并使用promise返回结果。 + +**系统能力:**SystemCapability.Multimedia.Image.Core + +**返回值:** + +| 类型 | 说明 | +| ------------- | --------------------- | +| Promise | promise返回操作结果。 | + +**示例:** + +```js +img.release().then(() =>{ + }).catch(error => { + }) +``` + ## PositionArea7+ 表示图片指定区域内的数据。 @@ -1093,3 +1422,40 @@ release(): Promise\ | GPS_LATITUDE_REF | "GPSLatitudeRef" | 纬度引用,例如N或S。 | | GPS_LONGITUDE_REF | "GPSLongitudeRef" | 经度引用,例如W或E。 | +## ImageFormat8+ + +枚举,图片格式。 + +**系统能力:**以下各项对应的系统能力均为SystemCapability.Multimedia.Image.Core + +| 名称 | 默认值 | 描述 | +| ------------ | ------ | --------------------- | +| YCBCR_422_SP | 1000 | YCBCR422 半平面格式。 | +| JPEG | 2000 | JPEG编码格式。 | + +## ComponentType8+ + +枚举,图像的组件类型。 + +**系统能力:**以下各项对应的系统能力均为SystemCapability.Multimedia.Image.ImageReceiver + +| 名称 | 默认值 | 描述 | +| ----- | ------ | ----------- | +| YUV_Y | 1 | 亮度信息。 | +| YUV_U | 2 | 色度信息。 | +| YUV_V | 3 | 色度信息。 | +| JPEG | 4 | Jpeg 类型。 | + +## Component8+ + +描述图像颜色分量。 + +**系统能力:**以下各项对应的系统能力均为SystemCapability.Multimedia.Image.Core + +| 名称 | 类型 | 可读 | 可写 | 说明 | +| ------------- | -------------------------------- | ---- | ---- | ------------ | +| componentType | [ComponentType](#ComponentType8) | 是 | 否 | 组件类型。 | +| rowStride | number | 是 | 否 | 行距。 | +| pixelStride | number | 是 | 否 | 像素间距。 | +| byteBuffer | ArrayBuffer | 是 | 否 | 组件缓冲区。 | +