by bpampuch

bpampuch / pdfmake

Client/server side PDF printing in pure JavaScript

8.7K Stars 1.5K Forks Last release: 3 months ago (0.1.68) MIT License 1.3K Commits 64 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

pdfmake Build Status GitHub npm Bower Packagist CDNJS

PDF document generation library for server-side and client-side in pure JavaScript.

Check out the playground and examples.

This is unstable master branch for version 0.2.x, for stable version 0.1.x see branch 0.1.


  • line-wrapping,
  • text-alignments (left, right, centered, justified),
  • numbered and bulleted lists,
  • tables and columns
    • auto/fixed/star-sized widths,
    • col-spans and row-spans,
    • headers automatically repeated in case of a page-break,
  • images and vector graphics,
  • convenient styling and style inheritance,
  • page headers and footers:
    • static or dynamic content,
    • access to current page number and page count,
  • background-layer,
  • page dimensions and orientations,
  • margins,
  • custom page breaks,
  • font embedding,
  • support for complex, multi-level (nested) structures,
  • table of contents,
  • helper methods for opening/printing/downloading the generated PDF,
  • setting of PDF metadata (e.g. author, subject).


Documentation URL: https://pdfmake.github.io/docs/

Building from sources

using npm:

git clone https://github.com/bpampuch/pdfmake.git
cd pdfmake
npm install
npm run build

using yarn:

git clone https://github.com/bpampuch/pdfmake.git
cd pdfmake
yarn run build




pdfmake is based on a truly amazing library pdfkit (credits to @devongovett).

Thanks to all contributors.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.