• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.ability.PrintExtensionAbility (Print Extension Ability) (System API)
2
3The **PrintExtensionAbility** module provides operation APIs of the print extension ability.
4
5> **NOTE**
6> The initial APIs of this module are supported since API version 10. Newly added APIs will be marked with a superscript to indicate their earliest API version.
7> This topic describes only system APIs provided by the module. For details about its public APIs, see [@ohos.app.ability.PrintExtensionAbility (Print Extension Ability)](./js-apis-app-ability-PrintExtensionAbility.md).
8> The APIs of this module can be used only in the stage model.
9
10## Modules to Import
11
12```ts
13import { PrintExtensionAbility } from '@kit.BasicServicesKit';
14```
15
16## PrintExtensionAbility.onStartPrintJob
17
18onStartPrintJob(jobInfo: print.PrintJob): void
19
20Called when the specified print job starts.
21
22**System capability**: SystemCapability.Print.PrintFramework
23
24**Parameters**
25| **Name**| **Type**| **Mandatory**| **Description**|
26| -------- | -------- | -------- | -------- |
27| jobInfo | print.PrintJob | Yes| Information about the print job.|
28
29**Error codes**
30
31For details about the error codes, see [Error Codes of the Print Service](./errorcode-print.md).
32
33| ID| Error Message                                   |
34| -------- | ------------------------------------------- |
35| 202 | not system application |
36
37**Example**
38
39```ts
40import PrintExtensionAbility from '@ohos.app.ability.PrintExtensionAbility';
41import print from '@ohos.print';
42
43export default class HWPrintExtension extends PrintExtensionAbility {
44    onStartPrintJob(jobInfo: print.PrintJob): void {
45        console.log('onStartPrintJob, jobId is: ' + jobInfo.jobId);
46        // ...
47    }
48}
49```
50
51## PrintExtensionAbility.onCancelPrintJob
52
53onCancelPrintJob(jobInfo: print.PrintJob): void
54
55Called when the specified print job is canceled.
56
57**System capability**: SystemCapability.Print.PrintFramework
58
59**Parameters**
60| **Name**| **Type**| **Mandatory**| **Description**|
61| -------- | -------- | -------- | -------- |
62| jobInfo | print.PrintJob | Yes| Information about the print job.|
63
64**Error codes**
65
66For details about the error codes, see [Error Codes of the Print Service](./errorcode-print.md).
67
68| ID| Error Message                                   |
69| -------- | ------------------------------------------- |
70| 202 | not system application |
71
72**Example**
73
74```ts
75import PrintExtensionAbility from '@ohos.app.ability.PrintExtensionAbility';
76import print from '@ohos.print';
77
78export default class HWPrintExtension extends PrintExtensionAbility {
79    onCancelPrintJob(jobInfo: print.PrintJob): void {
80        console.log('onCancelPrintJob, jobId is: ' + jobInfo.jobId);
81        // ...
82    }
83}
84```
85
86## PrintExtensionAbility.onRequestPrinterCapability
87
88onRequestPrinterCapability(printerId: number): print.PrinterCapability
89
90Called when a request is sent to check the capability of the specified printer.
91
92**System capability**: SystemCapability.Print.PrintFramework
93
94**Parameters**
95| **Name**| **Type**| **Mandatory**| **Description**|
96| -------- | -------- | -------- | -------- |
97| printerId | number | Yes| Printer ID.|
98
99**Return value**
100| **Type**| **Description**|
101| -------- | -------- |
102| print.PrinterCapability | Capability of the printer.|
103
104**Error codes**
105
106For details about the error codes, see [Error Codes of the Print Service](./errorcode-print.md).
107
108| ID| Error Message                                   |
109| -------- | ------------------------------------------- |
110| 202 | not system application |
111
112**Example**
113
114```ts
115import PrintExtensionAbility from '@ohos.app.ability.PrintExtensionAbility';
116import print from '@ohos.print';
117
118export default class HWPrintExtension extends PrintExtensionAbility {
119    onRequestPrinterCapability(printerId: number): print.PrinterCapability {
120        console.log('onRequestPrinterCapability enter');
121        // ...
122        let tmp : print.PrinterCapability = {
123            colorMode : 1,
124            duplexMode : 1,
125            pageSize : []
126        };
127        return tmp;
128    }
129}
130```
131
132## PrintExtensionAbility.onRequestPreview
133
134onRequestPreview(jobInfo: print.PrintJob): string
135
136Called when a print preview request is sent. The result is returned to the print SA.
137
138**System capability**: SystemCapability.Print.PrintFramework
139
140**Parameters**
141| **Name**| **Type**| **Mandatory**| **Description**|
142| -------- | -------- | -------- | -------- |
143| jobInfo | print.PrintJob | Yes| Information about the print job.|
144
145**Return value**
146| **Type**| **Description**|
147| -------- | -------- |
148| string | Preview result.|
149
150**Error codes**
151
152For details about the error codes, see [Error Codes of the Print Service](./errorcode-print.md).
153
154| ID| Error Message                                   |
155| -------- | ------------------------------------------- |
156| 202 | not system application |
157
158**Example**
159
160```ts
161import PrintExtensionAbility from '@ohos.app.ability.PrintExtensionAbility';
162import print from '@ohos.print';
163
164export default class HWPrintExtension extends PrintExtensionAbility {
165    onRequestPreview(jobInfo: print.PrintJob): string {
166        console.log('onRequestPreview enter');
167        // ...
168        let tmp : string = '';
169        return tmp;
170    }
171}
172```
173