• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# OH_ComponentSnapshot
2
3
4## 概述
5
6本模块提供获取组件截图的能力。
7
8**起始版本:** 15
9
10## 汇总
11
12### 结构体
13
14| 名称 | 描述 |
15| -------- | -------- |
16| struct  [ArkUI_SnapshotOptions](native__type_8h.md#ArkUI_SnapshotOptions) | 截图选项。 |
17
18### 函数
19
20| 名称 | 描述 |
21| -------- | -------- |
22| int32_t [OH_ArkUI_GetNodeSnapshot](native__node_8h#OH_ArkUI_GetNodeSnapshot) () | 获取给定组件的截图,若节点不在组件树上或尚未渲染,截图操作将会失败。当pixelmap不再使用时,应通过调用OH_PixelmapNative_Release来释放。 |
23| ArkUI_SnapshotOptions [OH_ArkUI_CreateSnapshotOptions](native__type_8h#OH_ArkUI_CreateSnapshotOptions) () | 创建一个截图选项,当返回值不再使用时必须通过`OH_ArkUI_SnapshotOptions_Dispose`释放。 |
24| void [OH_ArkUI_DestroySnapshotOptions](native__type_8h#OH_ArkUI_DestroySnapshotOptions) () | 销毁截图选项指针。 |
25| int32_t [OH_ArkUI_SnapshotOptions_SetScale](native__type_8h#OH_ArkUI_SnapshotOptions_SetScale) () | 配置截图选项中的缩放属性。 |
26
27### 创建快照选项
28
29## 类型定义说明
30
31### ArkUI_SnapshotOptions
32
33```
34typedef struct ArkUI_SnapshotOptions ArkUI_SnapshotOptions;
35```
36
37**描述**
38
39定义截图的可选项。
40
41**起始版本:** 15
42
43## 函数说明
44
45### OH_ArkUI_GetNodeSnapshot()
46
47```
48int32_t OH_ArkUI_GetNodeSnapshot(ArkUI_NodeHandle node, ArkUI_SnapshotOptions* snapshotOptions,
49    OH_PixelmapNative** pixelMap)
50```
51
52**描述**
53
54获取节点的快照像素图。
55
56**起始版本:** 15
57
58**参数:**
59
60| 名称          |  参数                                                     |
61| --------------- | ------------------------------------------------------------ |
62| node            | 截图的目标节点。                                             |
63| snapshotOptions | 给定的截图配置,为空时表示默认配置。              |
64| pixelmap        | 通过系统创建的Pixelmap指针。 |
65
66**返回:**
67
68| 返回值                                        | 描述           |
69| --------------------------------------------- | -------------- |
70| `ARKUI_ERROR_CODE_NO_ERROR`                   | 成功。     |
71| `ARKUI_ERROR_CODE_PARAM_INVALID`              | 函数参数异常。    |
72| `ARKUI_ERROR_CODE_INTERNAL_ERROR`             | 截图失败,将返回空指针。     |
73| `ARKUI_ERROR_CODE_COMPONENT_SNAPSHOT_TIMEOUT` | 截图超时。 |
74
75
76### OH_ArkUI_CreateSnapshotOptions()
77
78```
79ArkUI_SnapshotOptions* OH_ArkUI_CreateSnapshotOptions()
80```
81
82**描述**
83
84创建一个截图选项,当返回值不再使用时必须通过`OH_ArkUI_SnapshotOptions_Dispose`释放。
85
86**起始版本:** 15
87
88**返回:**
89
90| 返回值                   | 描述                                                         |
91| ------------------------ | ------------------------------------------------------------ |
92| `ArkUI_SnapshotOptions*` | 返回指向创建的截图选项对象的指针。如果对象返回空指针,则表示创建失败,失败的原因可能是地址空间已满。 |
93
94
95### OH_ArkUI_DestroySnapshotOptions()
96
97```
98void OH_ArkUI_DestroySnapshotOptions(ArkUI_SnapshotOptions* snapshotOptions)
99```
100
101**描述**
102
103销毁截图选项指针。
104
105**起始版本:** 15
106
107**参数:**
108
109| 名称         | 描述         |
110| --------------- | ---- |
111| snapshotOptions | 截图选项。 |
112
113### OH_ArkUI_SnapshotOptions_SetScale()
114
115```
116int32_t OH_ArkUI_SnapshotOptions_SetScale(ArkUI_SnapshotOptions* snapshotOptions, float scale)
117```
118
119**描述**
120
121配置截图选项中的缩放属性
122
123**起始版本:** 15
124
125**参数:**
126
127| 名称 | 描述 |
128| -------- | -------- |
129| snapshotOptions | 截图选项。 |
130| scale           | 缩放值。 |
131
132**返回:**
133
134| 返回值                           | 描述       |
135| -------------------------------- | ---------- |
136| `ARKUI_ERROR_CODE_NO_ERROR`      | 成功。 |
137| `ARKUI_ERROR_CODE_PARAM_INVALID` | 函数参数异常。<br> 异常原因:传入参数验证失败,参数不能为空。 |