When using a system printer (via printer:auto or printer:Name), you must provide a driver. You can use the printer or electron-printer modules depending on your environment.
Using Electron or Node.js drivers:
const ThermalPrinter = require("node-thermal-printer").printer;
const PrinterTypes = require("node-thermal-printer").types;
const electron = typeof process !== 'undefined' && process.versions && !!process.versions.electron;
let printer = new ThermalPrinter({
type: PrinterTypes.EPSON,
interface: 'printer:My Printer',
driver: require(electron ? 'electron-printer' : 'printer')
});
Using a custom driver:
You can pass a custom driver object during initialization or via setPrinterDriver():
let printer = new ThermalPrinter({
type: PrinterTypes.EPSON,
interface: 'printer:My Printer',
driver: MyCustomDriver
});
// Or after initialization:
printer.setPrinterDriver(MyCustomDriver);