var data = [
{
type: 'raw',
options: { language: 'ESCPOS', dotDensity: 'double', },
},
'\x1B' + '\x40', // init
'\x1B' + '\x61' + '\x31', // center align
'Beverly Hills, CA 90210' + '\x0A',
'\x0A', // line break
'\x0A', // line break
'\x0A', // line break
'May 18, 2016 10:30 AM' + '\x0A',
'\x0A', // line break
'\x0A', // line break
'\x0A',
'Transaction # 123456 Register: 3' + '\x0A',
'\x0A',
'\x0A',
'\x0A',
'\x1B' + '\x61' + '\x30', // left align
'Baklava (Qty 4) 9.00' + '\x1B' + '\x74' + '\x13' + '\xAA', //print special char symbol after numeric
'\x0A',
'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' + '\x0A',
'\x1B' + '\x45' + '\x0D', // bold on
"Here's some bold text!",
'\x0A',
'\x1B' + '\x45' + '\x0A', // bold off
'\x1D' + '\x21' + '\x11', // double font size
"Here's large text!",
'\x0A',
'\x1D' + '\x21' + '\x00', // standard font size
'\x1B' + '\x61' + '\x32', // right align
'\x1B' + '\x21' + '\x30', // em mode on
'DRINK ME',
'\x1B' + '\x21' + '\x0A' + '\x1B' + '\x45' + '\x0A', // em mode off
'\x0A' + '\x0A',
'\x1B' + '\x61' + '\x30', // left align
'------------------------------------------' + '\x0A',
'\x1B' + '\x4D' + '\x31', // small text
'EAT ME' + '\x0A',
'\x1B' + '\x4D' + '\x30', // normal text
'------------------------------------------' + '\x0A',
'normal text',
'\x1B' + '\x61' + '\x30', // left align
'\x0A' + '\x0A' + '\x0A' + '\x0A' + '\x0A' + '\x0A' + '\x0A',
'\x1B' + '\x69', // cut paper (old syntax)
// '\x1D' + '\x56' + '\x00' // full cut (new syntax)
// '\x1D' + '\x56' + '\x30' // full cut (new syntax)
// '\x1D' + '\x56' + '\x01' // partial cut (new syntax)
// '\x1D' + '\x56' + '\x31' // partial cut (new syntax)
'\x10' + '\x14' + '\x01' + '\x00' + '\x05', // Generate Pulse to kick-out cash drawer**
// **for legacy drawer cable CD-005A. Research before using.
];
if (!qz.websocket.isActive()) {
qz.websocket
.connect(undefined)
.then(() => {
console.log('socket connected');
return qz.printers.find();
})
.then((printers) => {
console.log('Printers:', printers);
let config = qz.configs.create(printers[0]);
return qz.print(config, data);
})
.then(() => {
return qz.websocket.disconnect();
})
.then(() => {
// process.exit(0);
})
.catch((err) => {
console.error(err);
// process.exit(1);
});
}