1# @ohos.screenshot (屏幕截图) 2 3本模块提供屏幕截图的能力。 4 5> **说明:** 6> 7> - 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9## 导入模块 10 11```ts 12import { screenshot } from '@kit.ArkUI'; 13``` 14 15## Rect 16 17表示截取图像的区域。 18 19**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 20 21**系统能力:** SystemCapability.WindowManager.WindowManager.Core 22 23| 名称 | 类型 | 必填 | 说明 | 24| ------ | ------ | ---- | ------------------------------------------------------------ | 25| left | number | 是 | 表示截取图像区域的左边界,单位为px,该参数应为整数。 | 26| top | number | 是 | 表示截取图像区域的上边界,单位为px,该参数应为整数。 | 27| width | number | 是 | 表示截取图像区域的宽度,单位为px,该参数应为整数。 | 28| height | number | 是 | 表示截取图像区域的高度,单位为px,该参数应为整数。 | 29 30## PickInfo 31 32截取图像的信息。 33 34**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 35 36**系统能力:** SystemCapability.WindowManager.WindowManager.Core 37 38 39| 名称 | 类型 | 必填 | 说明 | 40| -------------------- | ------------- | ---- | ------------------------------------------------------------ | 41| pickRect | [Rect](#rect) | 是 | 表示截取图像的区域。 | 42| pixelMap | [image.PixelMap](../apis-image-kit/js-apis-image.md#pixelmap7) | 是 | 表示截取的图像PixelMap对象 | 43 44## screenshot.pick 45 46pick(): Promise<PickInfo> 47 48获取屏幕截图。此接口仅可在2in1设备上使用。 49 50**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 51 52**系统能力:** SystemCapability.WindowManager.WindowManager.Core 53 54**返回值:** 55 56| 类型 | 说明 | 57| ----------------------------- | ----------------------------------------------- | 58| Promise<[PickInfo](#pickinfo)> | Promise对象。返回一个PickInfo对象。 | 59 60**错误码:** 61 62以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[屏幕错误码](errorcode-display.md)。 63 64| 错误码ID | 错误信息 | 65| ------- | ----------------------- | 66| 801 | Capability not supported on this device. | 67| 1400003 | This display manager service works abnormally. | 68 69**示例:** 70 71```ts 72import { BusinessError } from '@kit.BasicServicesKit'; 73 74try { 75 let promise = screenshot.pick(); 76 promise.then((pickInfo: screenshot.PickInfo) => { 77 console.log('pick Pixel bytes number: ' + pickInfo.pixelMap.getPixelBytesNumber()); 78 console.log('pick Rect: ' + pickInfo.pickRect); 79 pickInfo.pixelMap.release(); // PixelMap使用完后及时释放内存 80 }).catch((err: BusinessError) => { 81 console.log('Failed to pick. Code: ' + JSON.stringify(err)); 82 }); 83} catch (exception) { 84 console.error('Failed to pick Code: ' + JSON.stringify(exception)); 85}; 86``` 87