forked from tojocky/node-printer
-
Notifications
You must be signed in to change notification settings - Fork 81
/
Copy pathcancelJob.js
34 lines (33 loc) · 1.23 KB
/
cancelJob.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var printer = require("../lib"),
util = require('util'),
printerName = 'Foxit Reader PDF Printer',
printerFormat = 'TEXT';
printer.printDirect({
data:"print from Node.JS buffer", // or simple String: "some text"
printer:printerName, // printer name
type: printerFormat, // type: RAW, TEXT, PDF, JPEG, .. depends on platform
options: // supported page sizes may be retrieved using getPrinterDriverOptions, supports CUPS printing options
{
media: 'Letter',
'fit-to-page': true
},
success:function(jobID){
console.log("sent to printer with ID: "+jobID);
var jobInfo = printer.getJob(printerName, jobID);
console.log("current job info:"+util.inspect(jobInfo, {depth: 10, colors:true}));
if(jobInfo.status.indexOf('PRINTED') !== -1)
{
console.log('too late, already printed');
return;
}
console.log('cancelling...');
var is_ok = printer.setJob(printerName, jobID, 'CANCEL');
console.log("cancelled: "+is_ok);
try{
console.log("current job info:"+util.inspect(printer.getJob(printerName, jobID), {depth: 10, colors:true}));
}catch(err){
console.log('job deleted. err:'+err);
}
},
error:function(err){console.log(err);}
});