The definitive source of the best
JavaScript libraries, frameworks, and plugins.

  • ×

    Client/server side PDF printing in pure JavaScript
    Filed under 

    • 🔾82%Overall
    • 11,355
    • 12.1 days
    • 🕩2018
    • 👥11

    pdfmake Node.js CI 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.3.x, for stable use version 0.2.x see branch 0.2 or older 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:

    Source of documentation: Improvements are welcome!

    Building from sources

    using npm:

    git clone
    cd pdfmake
    npm install
    npm run build

    using yarn:

    git clone
    cd pdfmake
    yarn run build




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

    Thanks to all contributors.

    Show All