1e41f4b71Sopenharmony_ci# OH_Scan 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci 4e41f4b71Sopenharmony_ci## 概述 5e41f4b71Sopenharmony_ci 6e41f4b71Sopenharmony_ci向应用提供使用CAPI访问扫描仪设备的能力。 7e41f4b71Sopenharmony_ci 8e41f4b71Sopenharmony_ci**起始版本:** 12 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## 汇总 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci### 类型定义 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci| 名称 | 描述 | 17e41f4b71Sopenharmony_ci| -------- | -------- | 18e41f4b71Sopenharmony_ci| Scan_ScannerDevice | 扫描仪设备信息。 | 19e41f4b71Sopenharmony_ci| Scan_PictureScanProgress | 图片扫描进度。 | 20e41f4b71Sopenharmony_ci| Scan_ScannerOptions | 扫描仪选项。 | 21e41f4b71Sopenharmony_ci| Scan_ScannerDiscoveryCallback | 扫描仪发现回调函数。 | 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci 24e41f4b71Sopenharmony_ci### 枚举类型 25e41f4b71Sopenharmony_ci 26e41f4b71Sopenharmony_ci| 名称 | 描述 | 27e41f4b71Sopenharmony_ci| -------- | -------- | 28e41f4b71Sopenharmony_ci| Scan_ErrorCode | 枚举错误码。 | 29e41f4b71Sopenharmony_ci 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci### 函数 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci| 名称 | 描述 | 34e41f4b71Sopenharmony_ci| -------- | -------- | 35e41f4b71Sopenharmony_ci| OH_Scan_Init | 用于拉起扫描服务,初始化客户端,并建立与扫描服务的连接。 | 36e41f4b71Sopenharmony_ci| OH_Scan_StartScannerDiscovery | 用于搜索扫描仪,注册一个回调函数来处理发现的扫描仪。 | 37e41f4b71Sopenharmony_ci| OH_Scan_OpenScanner | 用于连接扫描仪。 | 38e41f4b71Sopenharmony_ci| OH_Scan_CloseScanner | 用于断开与扫描仪的连接。 | 39e41f4b71Sopenharmony_ci| OH_Scan_GetScannerParameter | 用于获取扫描仪设置选项。 | 40e41f4b71Sopenharmony_ci| OH_Scan_SetScannerParameter | 用于设置扫描仪的选项参数。 | 41e41f4b71Sopenharmony_ci| OH_Scan_StartScan | 用于启动扫描仪。 | 42e41f4b71Sopenharmony_ci| OH_Scan_CancelScan | 用于取消扫描。 | 43e41f4b71Sopenharmony_ci| OH_Scan_GetPictureScanProgress | 用于查询图片扫描进度。 | 44e41f4b71Sopenharmony_ci| OH_Scan_Exit | 用于退出扫描服务,释放客户端内存。 | 45e41f4b71Sopenharmony_ci 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci## 类型定义说明 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci 50e41f4b71Sopenharmony_ci### Scan_ScannerDevice 51e41f4b71Sopenharmony_ci 52e41f4b71Sopenharmony_ci**描述** 53e41f4b71Sopenharmony_ci 54e41f4b71Sopenharmony_ci扫描仪设备信息。 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci**起始版本:** 12 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci| 成员 | 描述 | 59e41f4b71Sopenharmony_ci| ------------ | -------- | 60e41f4b71Sopenharmony_ci| scannerId | 扫描仪id | 61e41f4b71Sopenharmony_ci| manufacturer | 制造商 | 62e41f4b71Sopenharmony_ci| model | 设备型号 | 63e41f4b71Sopenharmony_ci| discoverMode | 发现模式 | 64e41f4b71Sopenharmony_ci| serialNumber | 序列号 | 65e41f4b71Sopenharmony_ci 66e41f4b71Sopenharmony_ci### Scan_PictureScanProgress 67e41f4b71Sopenharmony_ci 68e41f4b71Sopenharmony_ci**描述** 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ci图片扫描进度。 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ci**起始版本:** 12 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_ci| 成员 | 描述 | 75e41f4b71Sopenharmony_ci| -------- | ----------------------- | 76e41f4b71Sopenharmony_ci| progress | 图片扫描进度,范围0~100 | 77e41f4b71Sopenharmony_ci| fd | 图片文件句柄 | 78e41f4b71Sopenharmony_ci| isFinal | 是否有下一张图片 | 79e41f4b71Sopenharmony_ci 80e41f4b71Sopenharmony_ci### Scan_ScannerOptions 81e41f4b71Sopenharmony_ci 82e41f4b71Sopenharmony_ci**描述** 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ci扫描仪选项。 85e41f4b71Sopenharmony_ci 86e41f4b71Sopenharmony_ci**起始版本:** 12 87e41f4b71Sopenharmony_ci 88e41f4b71Sopenharmony_ci| 成员 | 描述 | 89e41f4b71Sopenharmony_ci| ------------ | ------------ | 90e41f4b71Sopenharmony_ci| titles | 选项标题 | 91e41f4b71Sopenharmony_ci| descriptions | 选项描述信息 | 92e41f4b71Sopenharmony_ci| ranges | 选项范围 | 93e41f4b71Sopenharmony_ci| optionCount | 选项个数 | 94e41f4b71Sopenharmony_ci 95e41f4b71Sopenharmony_ci### Scan_ScannerDiscoveryCallback 96e41f4b71Sopenharmony_ci 97e41f4b71Sopenharmony_ci**描述** 98e41f4b71Sopenharmony_ci 99e41f4b71Sopenharmony_ci扫描仪发现回调函数。 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci**起始版本:** 12 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci| 参数 | 描述 | 104e41f4b71Sopenharmony_ci| ----------- | ---------- | 105e41f4b71Sopenharmony_ci| devices | 扫描仪设备 | 106e41f4b71Sopenharmony_ci| deviceCount | 设备个数 | 107e41f4b71Sopenharmony_ci 108e41f4b71Sopenharmony_ci 109e41f4b71Sopenharmony_ci 110e41f4b71Sopenharmony_ci## 枚举类型说明 111e41f4b71Sopenharmony_ci 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_ci### Scan_ErrorCode 114e41f4b71Sopenharmony_ci 115e41f4b71Sopenharmony_ci**描述** 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_ci枚举错误码。 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_ci**起始版本:** 12 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 122e41f4b71Sopenharmony_ci| -------- | -------- | 123e41f4b71Sopenharmony_ci| SCAN_ERROR_NONE | 成功。 | 124e41f4b71Sopenharmony_ci| SCAN_ERROR_NO_PERMISSION | 没有权限。 | 125e41f4b71Sopenharmony_ci| SCAN_ERROR_INVALID_PARAMETER | 无效的参数。 | 126e41f4b71Sopenharmony_ci| SCAN_ERROR_GENERIC_FAILURE | 一般的内部错误。 | 127e41f4b71Sopenharmony_ci| SCAN_ERROR_RPC_FAILURE | PRC通信错误。 | 128e41f4b71Sopenharmony_ci| SCAN_ERROR_SERVER_FAILURE | 服务端错误。 | 129e41f4b71Sopenharmony_ci| SCAN_ERROR_UNSUPPORTED | 不支持该操作。 | 130e41f4b71Sopenharmony_ci| SCAN_ERROR_CANCELED | 操作被取消。 | 131e41f4b71Sopenharmony_ci| SCAN_ERROR_DEVICE_BUSY | 设备忙碌。 | 132e41f4b71Sopenharmony_ci| SCAN_ERROR_INVALID | 无效操作。 | 133e41f4b71Sopenharmony_ci| SCAN_ERROR_JAMMED | 进纸器卡纸。 | 134e41f4b71Sopenharmony_ci| SCAN_ERROR_NO_DOCS | 没有纸。 | 135e41f4b71Sopenharmony_ci| SCAN_ERROR_COVER_OPEN | 扫描仪的盖子被打开。 | 136e41f4b71Sopenharmony_ci| SCAN_ERROR_IO_ERROR | 扫描仪IO过程中错误。 | 137e41f4b71Sopenharmony_ci| SCAN_ERROR_NO_MEMORY | 扫描仪没有内存。 | 138e41f4b71Sopenharmony_ci 139e41f4b71Sopenharmony_ci 140e41f4b71Sopenharmony_ci## 函数说明 141e41f4b71Sopenharmony_ci 142e41f4b71Sopenharmony_ci 143e41f4b71Sopenharmony_ci### OH_Scan_Init() 144e41f4b71Sopenharmony_ci 145e41f4b71Sopenharmony_ci```cpp 146e41f4b71Sopenharmony_ciint32_t OH_Scan_Init(); 147e41f4b71Sopenharmony_ci``` 148e41f4b71Sopenharmony_ci 149e41f4b71Sopenharmony_ci**描述** 150e41f4b71Sopenharmony_ci 151e41f4b71Sopenharmony_ci这个接口用于拉起扫描服务,初始化客户端,并建立与扫描服务的连接。 152e41f4b71Sopenharmony_ci 153e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 154e41f4b71Sopenharmony_ci 155e41f4b71Sopenharmony_ci**起始版本:** 12 156e41f4b71Sopenharmony_ci 157e41f4b71Sopenharmony_ci**返回:** 158e41f4b71Sopenharmony_ci 159e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 160e41f4b71Sopenharmony_ci 161e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 162e41f4b71Sopenharmony_ci 163e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 164e41f4b71Sopenharmony_ci 165e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常。 166e41f4b71Sopenharmony_ci 167e41f4b71Sopenharmony_ci### OH_Scan_StartScannerDiscovery() 168e41f4b71Sopenharmony_ci 169e41f4b71Sopenharmony_ci```cpp 170e41f4b71Sopenharmony_ciint32_t OH_Scan_StartScannerDiscovery(Scan_ScannerDiscoveryCallback callback); 171e41f4b71Sopenharmony_ci``` 172e41f4b71Sopenharmony_ci 173e41f4b71Sopenharmony_ci**描述** 174e41f4b71Sopenharmony_ci 175e41f4b71Sopenharmony_ci这个接口用于搜索扫描仪,注册一个回调函数来处理发现的扫描仪。 176e41f4b71Sopenharmony_ci 177e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 178e41f4b71Sopenharmony_ci 179e41f4b71Sopenharmony_ci**起始版本:** 12 180e41f4b71Sopenharmony_ci 181e41f4b71Sopenharmony_ci**参数:** 182e41f4b71Sopenharmony_ci 183e41f4b71Sopenharmony_ci| 名称 | 描述 | 184e41f4b71Sopenharmony_ci| -------- | -------------------------- | 185e41f4b71Sopenharmony_ci| callback | 扫描仪发现事件的回调函数。 | 186e41f4b71Sopenharmony_ci 187e41f4b71Sopenharmony_ci**返回:** 188e41f4b71Sopenharmony_ci 189e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 190e41f4b71Sopenharmony_ci 191e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 192e41f4b71Sopenharmony_ci 193e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 194e41f4b71Sopenharmony_ci 195e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常。 196e41f4b71Sopenharmony_ci 197e41f4b71Sopenharmony_ci### OH_Scan_OpenScanner() 198e41f4b71Sopenharmony_ci 199e41f4b71Sopenharmony_ci```cpp 200e41f4b71Sopenharmony_ciint32_t OH_Scan_OpenScanner(const char* scannerId); 201e41f4b71Sopenharmony_ci``` 202e41f4b71Sopenharmony_ci 203e41f4b71Sopenharmony_ci**描述** 204e41f4b71Sopenharmony_ci 205e41f4b71Sopenharmony_ci这个接口用于连接扫描仪。 206e41f4b71Sopenharmony_ci 207e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 208e41f4b71Sopenharmony_ci 209e41f4b71Sopenharmony_ci**起始版本:** 12 210e41f4b71Sopenharmony_ci 211e41f4b71Sopenharmony_ci**参数:** 212e41f4b71Sopenharmony_ci 213e41f4b71Sopenharmony_ci| 名称 | 描述 | 214e41f4b71Sopenharmony_ci| --------- | ---------- | 215e41f4b71Sopenharmony_ci| scannerId | 扫描仪的id | 216e41f4b71Sopenharmony_ci 217e41f4b71Sopenharmony_ci**返回:** 218e41f4b71Sopenharmony_ci 219e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 220e41f4b71Sopenharmony_ci 221e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 222e41f4b71Sopenharmony_ci 223e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 224e41f4b71Sopenharmony_ci 225e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常; 226e41f4b71Sopenharmony_ci 227e41f4b71Sopenharmony_ci返回SCAN_ERROR_DEVICE_BUSY表示扫描仪忙碌; 228e41f4b71Sopenharmony_ci 229e41f4b71Sopenharmony_ci返回SCAN_ERROR_INVALID_PARAMETER表示无效参数; 230e41f4b71Sopenharmony_ci 231e41f4b71Sopenharmony_ci返回SCAN_ERROR_IO_ERROR表示扫描仪IO错误; 232e41f4b71Sopenharmony_ci 233e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_MEMORY表示没有足够的内存。 234e41f4b71Sopenharmony_ci 235e41f4b71Sopenharmony_ci### OH_Scan_CloseScanner() 236e41f4b71Sopenharmony_ci 237e41f4b71Sopenharmony_ci```cpp 238e41f4b71Sopenharmony_ciint32_t OH_Scan_CloseScanner(const char* scannerId); 239e41f4b71Sopenharmony_ci``` 240e41f4b71Sopenharmony_ci 241e41f4b71Sopenharmony_ci**描述** 242e41f4b71Sopenharmony_ci 243e41f4b71Sopenharmony_ci这个接口用于断开与扫描仪的连接。 244e41f4b71Sopenharmony_ci 245e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 246e41f4b71Sopenharmony_ci 247e41f4b71Sopenharmony_ci**起始版本:** 12 248e41f4b71Sopenharmony_ci 249e41f4b71Sopenharmony_ci**参数:** 250e41f4b71Sopenharmony_ci 251e41f4b71Sopenharmony_ci| 名称 | 描述 | 252e41f4b71Sopenharmony_ci| --------- | ---------- | 253e41f4b71Sopenharmony_ci| scannerId | 扫描仪的id | 254e41f4b71Sopenharmony_ci 255e41f4b71Sopenharmony_ci**返回:** 256e41f4b71Sopenharmony_ci 257e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 258e41f4b71Sopenharmony_ci 259e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 260e41f4b71Sopenharmony_ci 261e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 262e41f4b71Sopenharmony_ci 263e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常。 264e41f4b71Sopenharmony_ci 265e41f4b71Sopenharmony_ci返回SCAN_ERROR_INVALID_PARAMETER表示无效参数。 266e41f4b71Sopenharmony_ci 267e41f4b71Sopenharmony_ci### OH_Scan_GetScannerParameter() 268e41f4b71Sopenharmony_ci 269e41f4b71Sopenharmony_ci```cpp 270e41f4b71Sopenharmony_ciScan_ScannerOptions* OH_Scan_GetScannerParameter(const char* scannerId, int32_t* errorCode); 271e41f4b71Sopenharmony_ci``` 272e41f4b71Sopenharmony_ci 273e41f4b71Sopenharmony_ci**描述** 274e41f4b71Sopenharmony_ci 275e41f4b71Sopenharmony_ci这个接口用于获取扫描仪设置选项,返回的结构体指针在{@link OH_Scan_Exit}时自动释放内存,每个型号的扫描仪在内存中只存储一个副本。 276e41f4b71Sopenharmony_ci 277e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 278e41f4b71Sopenharmony_ci 279e41f4b71Sopenharmony_ci**起始版本:** 12 280e41f4b71Sopenharmony_ci 281e41f4b71Sopenharmony_ci**参数:** 282e41f4b71Sopenharmony_ci 283e41f4b71Sopenharmony_ci| 名称 | 描述 | 284e41f4b71Sopenharmony_ci| --------- | ---------- | 285e41f4b71Sopenharmony_ci| scannerId | 扫描仪的id | 286e41f4b71Sopenharmony_ci| errorCode | 错误码 | 287e41f4b71Sopenharmony_ci 288e41f4b71Sopenharmony_ci**返回:** 289e41f4b71Sopenharmony_ci 290e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 291e41f4b71Sopenharmony_ci 292e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 293e41f4b71Sopenharmony_ci 294e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 295e41f4b71Sopenharmony_ci 296e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常。 297e41f4b71Sopenharmony_ci 298e41f4b71Sopenharmony_ci### OH_Scan_SetScannerParameter() 299e41f4b71Sopenharmony_ci 300e41f4b71Sopenharmony_ci```cpp 301e41f4b71Sopenharmony_ciint32_t OH_Scan_SetScannerParameter(const char* scannerId, const int32_t option, const char* value); 302e41f4b71Sopenharmony_ci``` 303e41f4b71Sopenharmony_ci 304e41f4b71Sopenharmony_ci**描述** 305e41f4b71Sopenharmony_ci 306e41f4b71Sopenharmony_ci这个接口用于设置扫描仪的选项参数,选项值的返回通过{@link OH_Scan_GetScannerParameter}接口获得。 307e41f4b71Sopenharmony_ci 308e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 309e41f4b71Sopenharmony_ci 310e41f4b71Sopenharmony_ci**起始版本:** 12 311e41f4b71Sopenharmony_ci 312e41f4b71Sopenharmony_ci**参数:** 313e41f4b71Sopenharmony_ci 314e41f4b71Sopenharmony_ci| 名称 | 描述 | 315e41f4b71Sopenharmony_ci| --------- | ---------- | 316e41f4b71Sopenharmony_ci| scannerId | 扫描仪的id | 317e41f4b71Sopenharmony_ci| option | 选项编号 | 318e41f4b71Sopenharmony_ci| value | 选项值 | 319e41f4b71Sopenharmony_ci 320e41f4b71Sopenharmony_ci**返回:** 321e41f4b71Sopenharmony_ci 322e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 323e41f4b71Sopenharmony_ci 324e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 325e41f4b71Sopenharmony_ci 326e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 327e41f4b71Sopenharmony_ci 328e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常; 329e41f4b71Sopenharmony_ci 330e41f4b71Sopenharmony_ci返回SCAN_ERROR_INVALID_PARAMETER表示无效参数。 331e41f4b71Sopenharmony_ci 332e41f4b71Sopenharmony_ci### OH_Scan_StartScan() 333e41f4b71Sopenharmony_ci 334e41f4b71Sopenharmony_ci```cpp 335e41f4b71Sopenharmony_ciint32_t OH_Scan_StartScan(const char* scannerId, bool batchMode); 336e41f4b71Sopenharmony_ci``` 337e41f4b71Sopenharmony_ci 338e41f4b71Sopenharmony_ci**描述** 339e41f4b71Sopenharmony_ci 340e41f4b71Sopenharmony_ci这个接口用于启动扫描仪。 341e41f4b71Sopenharmony_ci 342e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 343e41f4b71Sopenharmony_ci 344e41f4b71Sopenharmony_ci**起始版本:** 12 345e41f4b71Sopenharmony_ci 346e41f4b71Sopenharmony_ci**参数:** 347e41f4b71Sopenharmony_ci 348e41f4b71Sopenharmony_ci| 名称 | 描述 | 349e41f4b71Sopenharmony_ci| --------- | ---------- | 350e41f4b71Sopenharmony_ci| scannerId | 扫描仪的id | 351e41f4b71Sopenharmony_ci| batchMode | 批处理模式 | 352e41f4b71Sopenharmony_ci 353e41f4b71Sopenharmony_ci**返回:** 354e41f4b71Sopenharmony_ci 355e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 356e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 357e41f4b71Sopenharmony_ci 358e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 359e41f4b71Sopenharmony_ci 360e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常; 361e41f4b71Sopenharmony_ci 362e41f4b71Sopenharmony_ci返回SCAN_ERROR_INVALID_PARAMETER表示无效参数; 363e41f4b71Sopenharmony_ci 364e41f4b71Sopenharmony_ci返回SCAN_ERROR_JAMMED表示扫描仪卡纸; 365e41f4b71Sopenharmony_ci 366e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_DOCS表示没有纸; 367e41f4b71Sopenharmony_ci 368e41f4b71Sopenharmony_ci返回SCAN_ERROR_COVER_OPEN表示扫描仪的盖子被打开; 369e41f4b71Sopenharmony_ci 370e41f4b71Sopenharmony_ci返回SCAN_ERROR_IO_ERROR表示扫描仪IO异常; 371e41f4b71Sopenharmony_ci 372e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_MEMORY表示没有足够的内存; 373e41f4b71Sopenharmony_ci 374e41f4b71Sopenharmony_ci返回SCAN_ERROR_DEVICE_BUSY表示扫描仪忙碌。 375e41f4b71Sopenharmony_ci 376e41f4b71Sopenharmony_ci### OH_Scan_CancelScan() 377e41f4b71Sopenharmony_ci 378e41f4b71Sopenharmony_ci```cpp 379e41f4b71Sopenharmony_ciint32_t OH_Scan_CancelScan(const char* scannerId); 380e41f4b71Sopenharmony_ci``` 381e41f4b71Sopenharmony_ci 382e41f4b71Sopenharmony_ci**描述** 383e41f4b71Sopenharmony_ci 384e41f4b71Sopenharmony_ci这个接口用于取消扫描。 385e41f4b71Sopenharmony_ci 386e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 387e41f4b71Sopenharmony_ci 388e41f4b71Sopenharmony_ci**起始版本:** 12 389e41f4b71Sopenharmony_ci 390e41f4b71Sopenharmony_ci**参数:** 391e41f4b71Sopenharmony_ci 392e41f4b71Sopenharmony_ci| 名称 | 描述 | 393e41f4b71Sopenharmony_ci| --------- | ---------- | 394e41f4b71Sopenharmony_ci| scannerId | 扫描仪的id | 395e41f4b71Sopenharmony_ci 396e41f4b71Sopenharmony_ci**返回:** 397e41f4b71Sopenharmony_ci 398e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 399e41f4b71Sopenharmony_ci 400e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 401e41f4b71Sopenharmony_ci 402e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 403e41f4b71Sopenharmony_ci 404e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常; 405e41f4b71Sopenharmony_ci 406e41f4b71Sopenharmony_ci返回SCAN_ERROR_INVALID_PARAMETER表示无效参数。 407e41f4b71Sopenharmony_ci 408e41f4b71Sopenharmony_ci### OH_Scan_GetPictureScanProgress() 409e41f4b71Sopenharmony_ci 410e41f4b71Sopenharmony_ci```cpp 411e41f4b71Sopenharmony_ciint32_t OH_Scan_GetPictureScanProgress(const char* scannerId, Scan_PictureScanProgress* prog); 412e41f4b71Sopenharmony_ci``` 413e41f4b71Sopenharmony_ci 414e41f4b71Sopenharmony_ci**描述** 415e41f4b71Sopenharmony_ci 416e41f4b71Sopenharmony_ci这个接口用于查询图片扫描进度。 417e41f4b71Sopenharmony_ci 418e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 419e41f4b71Sopenharmony_ci 420e41f4b71Sopenharmony_ci**起始版本:** 12 421e41f4b71Sopenharmony_ci 422e41f4b71Sopenharmony_ci**参数:** 423e41f4b71Sopenharmony_ci 424e41f4b71Sopenharmony_ci| 名称 | 描述 | 425e41f4b71Sopenharmony_ci| --------- | ------------ | 426e41f4b71Sopenharmony_ci| scannerId | 扫描仪的id | 427e41f4b71Sopenharmony_ci| prog | 图片扫描进度 | 428e41f4b71Sopenharmony_ci 429e41f4b71Sopenharmony_ci**返回:** 430e41f4b71Sopenharmony_ci 431e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 432e41f4b71Sopenharmony_ci 433e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 434e41f4b71Sopenharmony_ci 435e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 436e41f4b71Sopenharmony_ci 437e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常; 438e41f4b71Sopenharmony_ci 439e41f4b71Sopenharmony_ci返回SCAN_ERROR_INVALID_PARAMETER表示无效参数; 440e41f4b71Sopenharmony_ci 441e41f4b71Sopenharmony_ci返回SCAN_ERROR_JAMMED表示扫描仪卡纸; 442e41f4b71Sopenharmony_ci 443e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_DOCS表示没有纸; 444e41f4b71Sopenharmony_ci 445e41f4b71Sopenharmony_ci返回SCAN_ERROR_COVER_OPEN表示扫描仪的盖子被打开; 446e41f4b71Sopenharmony_ci 447e41f4b71Sopenharmony_ci返回SCAN_ERROR_IO_ERROR表示扫描仪IO异常; 448e41f4b71Sopenharmony_ci 449e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_MEMORY表示没有足够的内存; 450e41f4b71Sopenharmony_ci 451e41f4b71Sopenharmony_ci返回SCAN_ERROR_DEVICE_BUSY表示扫描仪忙碌。 452e41f4b71Sopenharmony_ci 453e41f4b71Sopenharmony_ci### OH_Scan_Exit() 454e41f4b71Sopenharmony_ci 455e41f4b71Sopenharmony_ci```cpp 456e41f4b71Sopenharmony_ciint32_t OH_Scan_Exit(); 457e41f4b71Sopenharmony_ci``` 458e41f4b71Sopenharmony_ci 459e41f4b71Sopenharmony_ci**描述** 460e41f4b71Sopenharmony_ci 461e41f4b71Sopenharmony_ci这个接口用于退出扫描服务,清除客户端内存,取消注册的扫描回调函数。 462e41f4b71Sopenharmony_ci 463e41f4b71Sopenharmony_ci**系统能力:** ohos.permission.PRINT 464e41f4b71Sopenharmony_ci 465e41f4b71Sopenharmony_ci**起始版本:** 12 466e41f4b71Sopenharmony_ci 467e41f4b71Sopenharmony_ci**返回:** 468e41f4b71Sopenharmony_ci 469e41f4b71Sopenharmony_ci返回Scan_ERROR_NONE表示成功; 470e41f4b71Sopenharmony_ci 471e41f4b71Sopenharmony_ci返回SCAN_ERROR_NO_PERMISSION表示没有权限; 472e41f4b71Sopenharmony_ci 473e41f4b71Sopenharmony_ci返回SCAN_ERROR_RPC_FAILURE表示RPC通信错误; 474e41f4b71Sopenharmony_ci 475e41f4b71Sopenharmony_ci返回SCAN_ERROR_SERVER_FAILURE表示服务端出现异常; 476e41f4b71Sopenharmony_ci 477e41f4b71Sopenharmony_ci返回SCAN_ERROR_INVALID_PARAMETER表示无效参数。