Socket
Socket
Sign inDemoInstall

@rasgo/pdf-to-printer

Package Overview
Dependencies
0
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @rasgo/pdf-to-printer

A utility to print PDF files from Node.js and Electron


Version published
Maintainers
1
Created

Readme

Source

Node.js PDF printing

Build Status codecov npm

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.

Installation

Install using yarn:

yarn add pdf-to-printer

Or npm:

npm install --save pdf-to-printer

Basic Usage

Print a PDF file to the default printer:

import ptp from "pdf-to-printer";

ptp
  .print("assets/pdf-sample.pdf")
  .then(console.log)
  .catch(console.error);

API

.print(pdf[, options]) => Promise<void>

Arguments

  1. pdf (string): PDF file to print. Will throw an error if no PDF specified. Note: It must be a path to a PDF existing in the file system. You may take a look at this example if you need to download your PDF file first.
  2. 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.
    • options.unix: (array [optional]): Since we use lp to print documents on Unix-like operating systems you can pass any available in this list option.
    • options.win32: (array [optional]): And since we use SumatraPDF to print documents on Windows you can pass any available in this list option.

Returns

Promise<void>.

Examples

To print a PDF file to the default printer:

ptp
  .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"
};

ptp
  .print("assets/pdf-sample.pdf", options)
  .then(console.log)
  .catch(console.error);

To scale the PDF to fit into the printable area of the paper on both Windows and Unix operating systems:

const options = {
  printer: "Zebra",
  unix: ["-o fit-to-page"],
  win32: ['-print-settings "fit"']
};

ptp
  .print("assets/pdf-sample.pdf", options)
  .then(console.log)
  .catch(console.error);

.getPrinters() => Promise<string[]>

Returns

Promise<string[]>: List of available printers.

Examples

ptp
  .getPrinters()
  .then(console.log)
  .catch(console.error);

.getDefaultPrinter() => Promise<string>

Returns

Promise<string>: Default printer.

Examples

ptp
  .getDefaultPrinter()
  .then(console.log)
  .catch(console.error);

More examples

We have a few examples in the source code.

Contact

Please do not hesitate to report a bug or suggest an idea. You can do it here.

Sponsor this project

If you rely on this package please consider supporting it https://www.buymeacoffee.com/artiebits. I would appreciate it.

License

MIT

Keywords

FAQs

Last updated on 12 Feb 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc