A utility to print PDF files from Node.js and Electron.
- ✅ Works on Windows and Unix-like operating systems.
- ✅ Supports label printers such as Rollo and Zebra.
Install using yarn
:
yarn add pdf-to-printer
Or npm
:
npm install --save pdf-to-printer
Print a PDF file to the default printer:
import printer from "pdf-to-printer";
printer
.print("assets/pdf-sample.pdf")
.then(console.log)
.catch(console.error);
pdf
(string
): PDF file to print. Will throw an error if no PDF specified.options
(Object
[optional]):options.printer
: (string
[optional]): Print to the specified printer. Will print to the default printer if name not specified. If the printer name mistyped or specified printer does not exist, nothing will print.
On UNIX systems you can add more options to the options
object. Some examples are:
const options = {
printer: "Zebra",
"fit-to-page": true,
landscape: true,
media: "A4"
);
printer
.print("assets/pdf-sample.pdf", options)
.then(console.log)
.catch(console.error);
Please checkout Command-line Printing and Options or man lp
to get all available options.
Promise<void>
.
To print a PDF file to the default printer:
printer
.print("assets/pdf-sample.pdf")
.then(console.log)
.catch(console.error);
To print to a specific printer, add the name of the printer to options:
const options = {
printer: "Zebra"
};
printer
.print("assets/pdf-sample.pdf", options)
.then(console.log)
.catch(console.error);
Promise<string[]>
: List of available printers.
printer
.list()
.then(console.log)
.catch(console.error);
We have a few examples in the source code.
Please do not hesitate to report a bug or suggest an idea. You can do it here, or email me at artur.khusaenov at gmail dot com.