• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.ability.PrintExtensionAbility (打印扩展能力)(系统接口)
2
3<!--Kit: Basic Services Kit-->
4<!--Subsystem: Print-->
5<!--Owner: @guoshengbang-->
6<!--Designer: @gcw_4D6e0BBd-->
7<!--Tester: @guoshengbang-->
8<!--Adviser: @RayShih-->
9
10该模块为打印扩展能力的操作API,提供调用打印扩展能力的接口。
11
12> **说明:**
13> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
14> 当前界面仅包含本模块的系统接口,其他公开接口参见[@ohos.app.ability.PrintExtensionAbility (打印扩展能力)](./js-apis-app-ability-PrintExtensionAbility.md)。
15> 本模块接口仅可在Stage模型下使用。
16
17## 导入模块
18
19```ts
20import { PrintExtensionAbility } from '@kit.BasicServicesKit';
21```
22
23## PrintExtensionAbility.onStartPrintJob
24
25onStartPrintJob(jobInfo: print.PrintJob): void
26
27开始打印任务时调用。
28
29**系统能力:** SystemCapability.Print.PrintFramework
30
31**参数:**
32| **参数名** | **类型** | **必填** | **说明** |
33| -------- | -------- | -------- | -------- |
34| jobInfo | [print.PrintJob](./js-apis-print-sys.md#printjob) | 是 | 表示打印任务的信息 |
35
36**错误码:**
37
38以下错误码的详细介绍请参见[打印服务错误码](./errorcode-print.md)。
39
40| 错误码ID | 错误信息                                    |
41| -------- | ------------------------------------------- |
42| 202 | not system application |
43
44**示例:**
45
46```ts
47import { PrintExtensionAbility } from '@kit.BasicServicesKit';
48import { print } from '@kit.BasicServicesKit';
49
50export default class HWPrintExtension extends PrintExtensionAbility {
51    onStartPrintJob(jobInfo: print.PrintJob): void {
52        console.log('onStartPrintJob, jobId is: ' + jobInfo.jobId);
53        // ...
54    }
55}
56```
57
58## PrintExtensionAbility.onCancelPrintJob
59
60onCancelPrintJob(jobInfo: print.PrintJob): void
61
62移除已开始的打印任务时调用。
63
64**系统能力:** SystemCapability.Print.PrintFramework
65
66**参数:**
67| **参数名** | **类型** | **必填** | **说明** |
68| -------- | -------- | -------- | -------- |
69| jobInfo | [print.PrintJob](./js-apis-print-sys.md#printjob) | 是 | 表示打印任务的信息 |
70
71**错误码:**
72
73以下错误码的详细介绍请参见[打印服务错误码](./errorcode-print.md)。
74
75| 错误码ID | 错误信息                                    |
76| -------- | ------------------------------------------- |
77| 202 | not system application |
78
79**示例:**
80
81```ts
82import { PrintExtensionAbility } from '@kit.BasicServicesKit';
83import { print } from '@kit.BasicServicesKit';
84
85export default class HWPrintExtension extends PrintExtensionAbility {
86    onCancelPrintJob(jobInfo: print.PrintJob): void {
87        console.log('onCancelPrintJob, jobId is: ' + jobInfo.jobId);
88        // ...
89    }
90}
91```
92
93## PrintExtensionAbility.onRequestPrinterCapability
94
95onRequestPrinterCapability(printerId: number): print.PrinterCapability
96
97请求打印机能力时调用。
98
99**系统能力:** SystemCapability.Print.PrintFramework
100
101**参数:**
102| **参数名** | **类型** | **必填** | **说明** |
103| -------- | -------- | -------- | -------- |
104| printerId | number | 是 | 表示打印机ID |
105
106**返回值:**
107| **类型** | **说明** |
108| -------- | -------- |
109| print.PrinterCapability | 表示打印能力 |
110
111**错误码:**
112
113以下错误码的详细介绍请参见[打印服务错误码](./errorcode-print.md)。
114
115| 错误码ID | 错误信息                                    |
116| -------- | ------------------------------------------- |
117| 202 | not system application |
118
119**示例:**
120
121```ts
122import { PrintExtensionAbility } from '@kit.BasicServicesKit';
123import { print } from '@kit.BasicServicesKit';
124
125export default class HWPrintExtension extends PrintExtensionAbility {
126    onRequestPrinterCapability(printerId: number): print.PrinterCapability {
127        console.log('onRequestPrinterCapability enter');
128        // ...
129        let tmp : print.PrinterCapability = {
130            colorMode : 1,
131            duplexMode : 1,
132            pageSize : []
133        };
134        return tmp;
135    }
136}
137```
138
139## PrintExtensionAbility.onRequestPreview
140
141onRequestPreview(jobInfo: print.PrintJob): string
142
143请求预览时调用,并将结果返回到Print SA。
144
145**系统能力:** SystemCapability.Print.PrintFramework
146
147**参数:**
148| **参数名** | **类型** | **必填** | **说明** |
149| -------- | -------- | -------- | -------- |
150| jobInfo | [print.PrintJob](./js-apis-print-sys.md#printjob) | 是 | 表示打印任务信息 |
151
152**返回值:**
153| **类型** | **说明** |
154| -------- | -------- |
155| string | 返回的预览结果 |
156
157**错误码:**
158
159以下错误码的详细介绍请参见[打印服务错误码](./errorcode-print.md)。
160
161| 错误码ID | 错误信息                                    |
162| -------- | ------------------------------------------- |
163| 202 | not system application |
164
165**示例:**
166
167```ts
168import { PrintExtensionAbility } from '@kit.BasicServicesKit';
169import { print } from '@kit.BasicServicesKit';
170
171export default class HWPrintExtension extends PrintExtensionAbility {
172    onRequestPreview(jobInfo: print.PrintJob): string {
173        console.log('onRequestPreview enter');
174        // ...
175        let tmp : string = '';
176        return tmp;
177    }
178}
179```
180