1# drawing_image.h 2 3<!--Kit: ArkGraphics 2D--> 4<!--Subsystem: Graphic--> 5<!--Owner: @hangmengxin--> 6<!--Designer: @wangyanglan--> 7<!--Tester: @nobuggers--> 8<!--Adviser: @ge-yafang--> 9 10## 概述 11 12文件中定义了与图片相关的功能函数。 13 14**引用文件:** <native_drawing/drawing_image.h> 15 16**库:** libnative_drawing.so 17 18**起始版本:** 12 19 20**相关模块:** [Drawing](capi-drawing.md) 21 22## 汇总 23 24### 函数 25 26| 名称 | 描述 | 27| -- | -- | 28| [OH_Drawing_Image* OH_Drawing_ImageCreate(void)](#oh_drawing_imagecreate) | 创建一个图片对象,描述了要绘制的二维像素数组。 | 29| [void OH_Drawing_ImageDestroy(OH_Drawing_Image* image)](#oh_drawing_imagedestroy) | 销毁图片对象并回收该对象占有内存。 | 30| [bool OH_Drawing_ImageBuildFromBitmap(OH_Drawing_Image* image, OH_Drawing_Bitmap* bitmap)](#oh_drawing_imagebuildfrombitmap) | 从位图构造图片对象内容,共享或复制位图像素。如果位图被标记为不可变状态,像素内存是共享的,不是复制。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image、bitmap任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 | 31| [int32_t OH_Drawing_ImageGetWidth(OH_Drawing_Image* image)](#oh_drawing_imagegetwidth) | 获取图片宽度,即每行的像素个数。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 | 32| [int32_t OH_Drawing_ImageGetHeight(OH_Drawing_Image* image)](#oh_drawing_imagegetheight) | 获取图片高度,即像素行数。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 | 33| [void OH_Drawing_ImageGetImageInfo(OH_Drawing_Image* image, OH_Drawing_Image_Info* imageInfo)](#oh_drawing_imagegetimageinfo) | 获取图片信息。调用该接口后,传入的图片信息对象被填充。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image、imageInfo任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 | 34 35## 函数说明 36 37### OH_Drawing_ImageCreate() 38 39``` 40OH_Drawing_Image* OH_Drawing_ImageCreate(void) 41``` 42 43**描述** 44 45创建一个图片对象,描述了要绘制的二维像素数组。 46 47**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing 48 49**起始版本:** 12 50 51**返回:** 52 53| 类型 | 说明 | 54| -- | -- | 55| [OH_Drawing_Image](capi-drawing-oh-drawing-image.md)* | 函数返回一个指针,指针指向创建的图片对象[OH_Drawing_Image](capi-drawing-oh-drawing-image.md)。 | 56 57### OH_Drawing_ImageDestroy() 58 59``` 60void OH_Drawing_ImageDestroy(OH_Drawing_Image* image) 61``` 62 63**描述** 64 65销毁图片对象并回收该对象占有内存。 66 67**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing 68 69**起始版本:** 12 70 71 72**参数:** 73 74| 参数项 | 描述 | 75| -- | -- | 76| [OH_Drawing_Image](capi-drawing-oh-drawing-image.md)* image | 指向图片对象[OH_Drawing_Image](capi-drawing-oh-drawing-image.md)的指针。 | 77 78### OH_Drawing_ImageBuildFromBitmap() 79 80``` 81bool OH_Drawing_ImageBuildFromBitmap(OH_Drawing_Image* image, OH_Drawing_Bitmap* bitmap) 82``` 83 84**描述** 85 86从位图构造图片对象内容,共享或复制位图像素。如果位图被标记为不可变状态,像素内存是共享的,不是复制。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image、bitmap任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 87 88**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing 89 90**起始版本:** 12 91 92 93**参数:** 94 95| 参数项 | 描述 | 96| -- | -- | 97| [OH_Drawing_Image](capi-drawing-oh-drawing-image.md)* image | 指向图片对象[OH_Drawing_Image](capi-drawing-oh-drawing-image.md)的指针。 | 98| [OH_Drawing_Bitmap](capi-drawing-oh-drawing-bitmap.md)* bitmap | 指向位图对象[OH_Drawing_Bitmap](capi-drawing-oh-drawing-bitmap.md)的指针。 | 99 100**返回:** 101 102| 类型 | 说明 | 103| -- | -- | 104| bool | 函数返回true表示构造图片内容成功,函数返回false表示构建图片内容失败。 | 105 106### OH_Drawing_ImageGetWidth() 107 108``` 109int32_t OH_Drawing_ImageGetWidth(OH_Drawing_Image* image) 110``` 111 112**描述** 113 114获取图片宽度,即每行的像素个数。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 115 116**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing 117 118**起始版本:** 12 119 120 121**参数:** 122 123| 参数项 | 描述 | 124| -- | -- | 125| [OH_Drawing_Image](capi-drawing-oh-drawing-image.md)* image | 指向图片对象[OH_Drawing_Image](capi-drawing-oh-drawing-image.md)的指针。 | 126 127**返回:** 128 129| 类型 | 说明 | 130| -- | -- | 131| int32_t | 函数返回图片宽度。 | 132 133### OH_Drawing_ImageGetHeight() 134 135``` 136int32_t OH_Drawing_ImageGetHeight(OH_Drawing_Image* image) 137``` 138 139**描述** 140 141获取图片高度,即像素行数。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 142 143**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing 144 145**起始版本:** 12 146 147 148**参数:** 149 150| 参数项 | 描述 | 151| -- | -- | 152| [OH_Drawing_Image](capi-drawing-oh-drawing-image.md)* image | 指向图片对象[OH_Drawing_Image](capi-drawing-oh-drawing-image.md)的指针。 | 153 154**返回:** 155 156| 类型 | 说明 | 157| -- | -- | 158| int32_t | 函数返回图片高度。 | 159 160### OH_Drawing_ImageGetImageInfo() 161 162``` 163void OH_Drawing_ImageGetImageInfo(OH_Drawing_Image* image, OH_Drawing_Image_Info* imageInfo) 164``` 165 166**描述** 167 168获取图片信息。调用该接口后,传入的图片信息对象被填充。<br>本接口会产生错误码,可以通过[OH_Drawing_ErrorCodeGet](capi-drawing-error-code-h.md#oh_drawing_errorcodeget)查看错误码的取值。<br>image、imageInfo任意一个为NULL时返回OH_DRAWING_ERROR_INVALID_PARAMETER。 169 170**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing 171 172**起始版本:** 12 173 174 175**参数:** 176 177| 参数项 | 描述 | 178| -- | -- | 179| [OH_Drawing_Image](capi-drawing-oh-drawing-image.md)* image | 指向图片对象[OH_Drawing_Image](capi-drawing-oh-drawing-image.md)的指针。 | 180| [OH_Drawing_Image_Info](capi-drawing-oh-drawing-image-info.md)* imageInfo | 指向图片信息对象[OH_Drawing_Image_Info](capi-drawing-oh-drawing-image-info.md)的指针,开发者可调用[OH_Drawing_Image_Info](capi-drawing-oh-drawing-image-info.md)创建。 | 181 182 183