Native bind printers on POSIX and Windows OS from Node.js, electron and node-webkit.
| method | brief |
|---|---|
getPrinters() |
enumerate all installed printers with current jobs and statuses |
getPrinter(printerName) |
get a specific/default printer info with current jobs and statuses |
getPrinterDriverOptions(printerName) |
(POSIX only) to get a specific/default printer driver options such as supported paper size and other info |
getSelectedPaperSize(printerName) |
(POSIX only) to get a specific/default printer default paper size from its driver options |
getDefaultPrinterName() |
return the default printer name; |
printDirect(options) |
to send a job to a specific/default printer, now supports CUPS options passed in the form of a JS object (see cancelJob.js example). To print a PDF from windows it is possible by using node-pdfium module to convert a PDF format into EMF and after to send to printer as EMF |
printFile(options) |
(POSIX only) to print a file |
getSupportedPrintFormats() |
to get all possible print formats for printDirect method which depends on OS. RAW and TEXT are supported from all OS-es; |
getJob(printerName, jobId) |
to get a specific job info including job status; |
setJob(printerName, jobId, command) |
to send a command to a job (e.g. 'CANCEL' to cancel the job); |
getSupportedJobCommands() |
to get supported job commands for setJob() depends on OS. 'CANCEL' command is supported from all OS-es. |
Native bind printers for electron on Windows OS, support both
win32_x64andwin32_ia32Optimized node-pre-gyp configuration and project directory to make rebuild simple before build electron application
this module is specially for electron application on Windows OS, compatible for
x64andia32if you develop on a
ia32machine, just skip this chapter(maybe the whole readme)if you need this module, suggest to publish it to
NPMor some other private registryafter rebuild work, suggest set
npmRebuildasfalsein electron build configuration
node-pre-gyppythonwindows-build-tools- something necessary about build electron application
npm i @namespace/node-printerelectron-builder is needed
npx electron-builder install-app-depsneed to change dir into
node_modules/@namespace/node-printerfirst
node-pre-gyp configure --target=`${electron_version}` --arch=x64 --dist-url=https://electronjs.org/headers --module_name=node_printer
node-pre-gyp build package --runtime=electron --target=`${electron_version}` --target_arch=x64 --build-from-sourcestill in the dir
node_modules/@namespace/node-printer
node-pre-gyp rebuild --target_arch=ia32
node-pre-gyp build package --runtime=electron --target=`${electron_version}` --target_arch=ia32 --build-from-source- If you have a problem, find/create a new Github issue