1e41f4b71Sopenharmony_ci# EffectKit
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## Overview
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ciThe EffectKit module provides the basic image processing capabilities, including brightness adjustment, blurring, and grayscale adjustment.
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci**Since**: 12
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ci## Summary
12e41f4b71Sopenharmony_ci
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci### File
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci| Name| Description|
17e41f4b71Sopenharmony_ci| -------- | -------- |
18e41f4b71Sopenharmony_ci| [effect_filter.h](effect__filter_8h.md) | Declares the APIs of an image effect filter.|
19e41f4b71Sopenharmony_ci| [effect_types.h](effect__types_8h.md) | Declares the data types of the image effect filter.|
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci### Structs
23e41f4b71Sopenharmony_ci
24e41f4b71Sopenharmony_ci| Name| Description|
25e41f4b71Sopenharmony_ci| -------- | -------- |
26e41f4b71Sopenharmony_ci| struct  [OH_Filter](_o_h___filter.md) | Describes a filter used to generate a filter pixel map.|
27e41f4b71Sopenharmony_ci| struct  [OH_Filter_ColorMatrix](_o_h___filter___color_matrix.md) | Describes a matrix used to create an effect filter.|
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ci### Types
31e41f4b71Sopenharmony_ci
32e41f4b71Sopenharmony_ci| Name| Description|
33e41f4b71Sopenharmony_ci| -------- | -------- |
34e41f4b71Sopenharmony_ci| typedef struct [OH_Filter](_o_h___filter.md)  [pixelMap](#pixelmap) | Defines a struct for a filter used to generate a filter pixel map.|
35e41f4b71Sopenharmony_ci| typedef enum [EffectErrorCode](#effecterrorcode)  [EffectErrorCode](#effecterrorcode) | Defines an enum for the status codes that may be used by the effect filter.|
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci
38e41f4b71Sopenharmony_ci### Enums
39e41f4b71Sopenharmony_ci
40e41f4b71Sopenharmony_ci| Name| Description|
41e41f4b71Sopenharmony_ci| -------- | -------- |
42e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) { EFFECT_SUCCESS = 0, EFFECT_BAD_PARAMETER = 401, EFFECT_UNSUPPORTED_OPERATION = 7600201, EFFECT_UNKNOWN_ERROR = 7600901 } | Enumerates the status codes that may be used by the effect filter.|
43e41f4b71Sopenharmony_ci
44e41f4b71Sopenharmony_ci
45e41f4b71Sopenharmony_ci### Functions
46e41f4b71Sopenharmony_ci
47e41f4b71Sopenharmony_ci| Name| Description|
48e41f4b71Sopenharmony_ci| -------- | -------- |
49e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_CreateEffect](#oh_filter_createeffect) (OH_PixelmapNative \*pixelmap, [OH_Filter](_o_h___filter.md) \*\*filter) | Creates an **OH_Filter** object.|
50e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_Release](#oh_filter_release) ([OH_Filter](_o_h___filter.md) \*filter) | Releases an **OH_Filter** object.|
51e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_Blur](#oh_filter_blur) ([OH_Filter](_o_h___filter.md) \*filter, float radius) | Creates the frosted glass effect and adds it to a filter.|
52e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_Brighten](#oh_filter_brighten) ([OH_Filter](_o_h___filter.md) \*filter, float brightness) | Creates the brightening effect and adds it to a filter.|
53e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_GrayScale](#oh_filter_grayscale) ([OH_Filter](_o_h___filter.md) \*filter) | Creates the grayscale effect and adds it to a filter.|
54e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_Invert](#oh_filter_invert) ([OH_Filter](_o_h___filter.md) \*filter) | Creates the inverted color effect and adds it to a filter.|
55e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_SetColorMatrix](#oh_filter_setcolormatrix) ([OH_Filter](_o_h___filter.md) \*filter, [OH_Filter_ColorMatrix](_o_h___filter___color_matrix.md) \*matrix) | Creates a custom effect through a matrix and adds it to a filter.|
56e41f4b71Sopenharmony_ci| [EffectErrorCode](#effecterrorcode) [OH_Filter_GetEffectPixelMap](#oh_filter_geteffectpixelmap) ([OH_Filter](_o_h___filter.md) \*filter, OH_PixelmapNative \*\*pixelmap) | Obtains the pixel map used to create a filter.|
57e41f4b71Sopenharmony_ci
58e41f4b71Sopenharmony_ci
59e41f4b71Sopenharmony_ci## Type Description
60e41f4b71Sopenharmony_ci
61e41f4b71Sopenharmony_ci
62e41f4b71Sopenharmony_ci### EffectErrorCode
63e41f4b71Sopenharmony_ci
64e41f4b71Sopenharmony_ci```
65e41f4b71Sopenharmony_citypedef enum EffectErrorCode EffectErrorCode
66e41f4b71Sopenharmony_ci```
67e41f4b71Sopenharmony_ci
68e41f4b71Sopenharmony_ci**Description**
69e41f4b71Sopenharmony_ci
70e41f4b71Sopenharmony_ciDefines an enum for the status codes that may be used by the effect filter.
71e41f4b71Sopenharmony_ci
72e41f4b71Sopenharmony_ci**Since**: 12
73e41f4b71Sopenharmony_ci
74e41f4b71Sopenharmony_ci
75e41f4b71Sopenharmony_ci### pixelMap
76e41f4b71Sopenharmony_ci
77e41f4b71Sopenharmony_ci```
78e41f4b71Sopenharmony_citypedef struct OH_Filter pixelMap
79e41f4b71Sopenharmony_ci```
80e41f4b71Sopenharmony_ci
81e41f4b71Sopenharmony_ci**Description**
82e41f4b71Sopenharmony_ci
83e41f4b71Sopenharmony_ciDefines a struct for a filter used to generate a filter pixel map. 
84e41f4b71Sopenharmony_ci
85e41f4b71Sopenharmony_ci**Since**: 12 
86e41f4b71Sopenharmony_ci
87e41f4b71Sopenharmony_ci
88e41f4b71Sopenharmony_ci## Enum Description
89e41f4b71Sopenharmony_ci
90e41f4b71Sopenharmony_ci
91e41f4b71Sopenharmony_ci### EffectErrorCode
92e41f4b71Sopenharmony_ci
93e41f4b71Sopenharmony_ci```
94e41f4b71Sopenharmony_cienum EffectErrorCode
95e41f4b71Sopenharmony_ci```
96e41f4b71Sopenharmony_ci
97e41f4b71Sopenharmony_ci**Description**
98e41f4b71Sopenharmony_ci
99e41f4b71Sopenharmony_ciEnumerates the status codes that may be used by the effect filter.
100e41f4b71Sopenharmony_ci
101e41f4b71Sopenharmony_ci**Since**: 12
102e41f4b71Sopenharmony_ci
103e41f4b71Sopenharmony_ci| Value| Description|
104e41f4b71Sopenharmony_ci| -------- | -------- |
105e41f4b71Sopenharmony_ci| EFFECT_SUCCESS | Operation successful.|
106e41f4b71Sopenharmony_ci| EFFECT_BAD_PARAMETER | Invalid parameter.|
107e41f4b71Sopenharmony_ci| EFFECT_UNSUPPORTED_OPERATION | Unsupported operation.|
108e41f4b71Sopenharmony_ci| EFFECT_UNKNOWN_ERROR | Unknown error.|
109e41f4b71Sopenharmony_ci
110e41f4b71Sopenharmony_ci
111e41f4b71Sopenharmony_ci## Function Description
112e41f4b71Sopenharmony_ci
113e41f4b71Sopenharmony_ci
114e41f4b71Sopenharmony_ci### OH_Filter_Blur()
115e41f4b71Sopenharmony_ci
116e41f4b71Sopenharmony_ci```
117e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_Blur (OH_Filter* filter, float radius )
118e41f4b71Sopenharmony_ci```
119e41f4b71Sopenharmony_ci
120e41f4b71Sopenharmony_ci**Description**
121e41f4b71Sopenharmony_ci
122e41f4b71Sopenharmony_ciCreates the frosted glass effect and adds it to a filter.
123e41f4b71Sopenharmony_ci
124e41f4b71Sopenharmony_ci**Since**: 12
125e41f4b71Sopenharmony_ci
126e41f4b71Sopenharmony_ci**Parameters**
127e41f4b71Sopenharmony_ci
128e41f4b71Sopenharmony_ci| Name| Description|
129e41f4b71Sopenharmony_ci| -------- | -------- |
130e41f4b71Sopenharmony_ci| filter | Pointer to the filter.|
131e41f4b71Sopenharmony_ci| radius | Blur radius of the frosted glass effect, in px.|
132e41f4b71Sopenharmony_ci
133e41f4b71Sopenharmony_ci**Returns**
134e41f4b71Sopenharmony_ci
135e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
136e41f4b71Sopenharmony_ci
137e41f4b71Sopenharmony_ci
138e41f4b71Sopenharmony_ci### OH_Filter_Brighten()
139e41f4b71Sopenharmony_ci
140e41f4b71Sopenharmony_ci```
141e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_Brighten (OH_Filter* filter, float brightness )
142e41f4b71Sopenharmony_ci```
143e41f4b71Sopenharmony_ci
144e41f4b71Sopenharmony_ci**Description**
145e41f4b71Sopenharmony_ci
146e41f4b71Sopenharmony_ciCreates the brightening effect and adds it to a filter.
147e41f4b71Sopenharmony_ci
148e41f4b71Sopenharmony_ci**Since**: 12
149e41f4b71Sopenharmony_ci
150e41f4b71Sopenharmony_ci**Parameters**
151e41f4b71Sopenharmony_ci
152e41f4b71Sopenharmony_ci| Name| Description|
153e41f4b71Sopenharmony_ci| -------- | -------- |
154e41f4b71Sopenharmony_ci| filter | Pointer to the filter.|
155e41f4b71Sopenharmony_ci| brightness | Luminance of the brightening effect. The value ranges from 0 to 1. When the value is **0**, the image remains unchanged.|
156e41f4b71Sopenharmony_ci
157e41f4b71Sopenharmony_ci**Returns**
158e41f4b71Sopenharmony_ci
159e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
160e41f4b71Sopenharmony_ci
161e41f4b71Sopenharmony_ci
162e41f4b71Sopenharmony_ci### OH_Filter_CreateEffect()
163e41f4b71Sopenharmony_ci
164e41f4b71Sopenharmony_ci```
165e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_CreateEffect (OH_PixelmapNative* pixelmap, OH_Filter** filter )
166e41f4b71Sopenharmony_ci```
167e41f4b71Sopenharmony_ci
168e41f4b71Sopenharmony_ci**Description**
169e41f4b71Sopenharmony_ci
170e41f4b71Sopenharmony_ciCreates an **OH_Filter** object.
171e41f4b71Sopenharmony_ci
172e41f4b71Sopenharmony_ci**Since**: 12
173e41f4b71Sopenharmony_ci
174e41f4b71Sopenharmony_ci**Parameters**
175e41f4b71Sopenharmony_ci
176e41f4b71Sopenharmony_ci| Name| Description|
177e41f4b71Sopenharmony_ci| -------- | -------- |
178e41f4b71Sopenharmony_ci| pixelmap | Pointer to the pixel map.|
179e41f4b71Sopenharmony_ci| filter | Double pointer to the filter created.|
180e41f4b71Sopenharmony_ci
181e41f4b71Sopenharmony_ci**Returns**
182e41f4b71Sopenharmony_ci
183e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
184e41f4b71Sopenharmony_ci
185e41f4b71Sopenharmony_ci
186e41f4b71Sopenharmony_ci### OH_Filter_GetEffectPixelMap()
187e41f4b71Sopenharmony_ci
188e41f4b71Sopenharmony_ci```
189e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_GetEffectPixelMap (OH_Filter* filter, OH_PixelmapNative** pixelmap )
190e41f4b71Sopenharmony_ci```
191e41f4b71Sopenharmony_ci
192e41f4b71Sopenharmony_ci**Description**
193e41f4b71Sopenharmony_ci
194e41f4b71Sopenharmony_ciObtains the pixel map used to create a filter.
195e41f4b71Sopenharmony_ci
196e41f4b71Sopenharmony_ci**Since**: 12
197e41f4b71Sopenharmony_ci
198e41f4b71Sopenharmony_ci**Parameters**
199e41f4b71Sopenharmony_ci
200e41f4b71Sopenharmony_ci| Name| Description|
201e41f4b71Sopenharmony_ci| -------- | -------- |
202e41f4b71Sopenharmony_ci| filter | Pointer to the filter.|
203e41f4b71Sopenharmony_ci| pixelmap | Double pointer to the pixel map obtained.|
204e41f4b71Sopenharmony_ci
205e41f4b71Sopenharmony_ci**Returns**
206e41f4b71Sopenharmony_ci
207e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
208e41f4b71Sopenharmony_ci
209e41f4b71Sopenharmony_ci
210e41f4b71Sopenharmony_ci### OH_Filter_GrayScale()
211e41f4b71Sopenharmony_ci
212e41f4b71Sopenharmony_ci```
213e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_GrayScale (OH_Filter* filter)
214e41f4b71Sopenharmony_ci```
215e41f4b71Sopenharmony_ci
216e41f4b71Sopenharmony_ci**Description**
217e41f4b71Sopenharmony_ci
218e41f4b71Sopenharmony_ciCreates the grayscale effect and adds it to a filter.
219e41f4b71Sopenharmony_ci
220e41f4b71Sopenharmony_ci**Since**: 12
221e41f4b71Sopenharmony_ci
222e41f4b71Sopenharmony_ci**Parameters**
223e41f4b71Sopenharmony_ci
224e41f4b71Sopenharmony_ci| Name| Description|
225e41f4b71Sopenharmony_ci| -------- | -------- |
226e41f4b71Sopenharmony_ci| filter | Pointer to the filter.|
227e41f4b71Sopenharmony_ci
228e41f4b71Sopenharmony_ci**Returns**
229e41f4b71Sopenharmony_ci
230e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
231e41f4b71Sopenharmony_ci
232e41f4b71Sopenharmony_ci
233e41f4b71Sopenharmony_ci### OH_Filter_Invert()
234e41f4b71Sopenharmony_ci
235e41f4b71Sopenharmony_ci```
236e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_Invert (OH_Filter* filter)
237e41f4b71Sopenharmony_ci```
238e41f4b71Sopenharmony_ci
239e41f4b71Sopenharmony_ci**Description**
240e41f4b71Sopenharmony_ci
241e41f4b71Sopenharmony_ciCreates the inverted color effect and adds it to a filter.
242e41f4b71Sopenharmony_ci
243e41f4b71Sopenharmony_ci**Since**: 12
244e41f4b71Sopenharmony_ci
245e41f4b71Sopenharmony_ci**Parameters**
246e41f4b71Sopenharmony_ci
247e41f4b71Sopenharmony_ci| Name| Description|
248e41f4b71Sopenharmony_ci| -------- | -------- |
249e41f4b71Sopenharmony_ci| filter | Pointer to the filter.|
250e41f4b71Sopenharmony_ci
251e41f4b71Sopenharmony_ci**Returns**
252e41f4b71Sopenharmony_ci
253e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
254e41f4b71Sopenharmony_ci
255e41f4b71Sopenharmony_ci
256e41f4b71Sopenharmony_ci### OH_Filter_Release()
257e41f4b71Sopenharmony_ci
258e41f4b71Sopenharmony_ci```
259e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_Release (OH_Filter* filter)
260e41f4b71Sopenharmony_ci```
261e41f4b71Sopenharmony_ci
262e41f4b71Sopenharmony_ci**Description**
263e41f4b71Sopenharmony_ci
264e41f4b71Sopenharmony_ciReleases an **OH_Filter** object.
265e41f4b71Sopenharmony_ci
266e41f4b71Sopenharmony_ci**Since**: 12
267e41f4b71Sopenharmony_ci
268e41f4b71Sopenharmony_ci**Parameters**
269e41f4b71Sopenharmony_ci
270e41f4b71Sopenharmony_ci| Name| Description|
271e41f4b71Sopenharmony_ci| -------- | -------- |
272e41f4b71Sopenharmony_ci| filter | Pointer to the filter.|
273e41f4b71Sopenharmony_ci
274e41f4b71Sopenharmony_ci**Returns**
275e41f4b71Sopenharmony_ci
276e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
277e41f4b71Sopenharmony_ci
278e41f4b71Sopenharmony_ci
279e41f4b71Sopenharmony_ci### OH_Filter_SetColorMatrix()
280e41f4b71Sopenharmony_ci
281e41f4b71Sopenharmony_ci```
282e41f4b71Sopenharmony_ciEffectErrorCode OH_Filter_SetColorMatrix (OH_Filter* filter, OH_Filter_ColorMatrix* matrix )
283e41f4b71Sopenharmony_ci```
284e41f4b71Sopenharmony_ci
285e41f4b71Sopenharmony_ci**Description**
286e41f4b71Sopenharmony_ci
287e41f4b71Sopenharmony_ciCreates a custom effect through a matrix and adds it to a filter.
288e41f4b71Sopenharmony_ci
289e41f4b71Sopenharmony_ci**Since**: 12
290e41f4b71Sopenharmony_ci
291e41f4b71Sopenharmony_ci**Parameters**
292e41f4b71Sopenharmony_ci
293e41f4b71Sopenharmony_ci| Name| Description|
294e41f4b71Sopenharmony_ci| -------- | -------- |
295e41f4b71Sopenharmony_ci| filter | Pointer to the filter.|
296e41f4b71Sopenharmony_ci| matrix | Pointer to a custom matrix, which is an [OH_Filter_ColorMatrix](_o_h___filter___color_matrix.md) object.|
297e41f4b71Sopenharmony_ci
298e41f4b71Sopenharmony_ci**Returns**
299e41f4b71Sopenharmony_ci
300e41f4b71Sopenharmony_ciReturns a status code defined in [EffectErrorCode](#effecterrorcode).
301