pdfmake Documentation

Client/server side PDF printing in pure JavaScript

12,349 stars JavaScript JavaScript 2 files ยท ~754 tokens
RAW Doc

Technical Documentation: bpampuch/pdfmake

โ„น๏ธ Provenance: Multi-Tier Ingestion ยท CodeWiki Reference

Overview (`README.md`)

pdfmake [![Node.js CI][githubactions_img]][githubactions_url] [![GitHub][github_img]][github_url] [![npm][npm_img]][npm_url]

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

Check out the playground and examples.

Features

  • 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,
    • snaking columns (newspaper-style layout where content flows column-to-column),
  • 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,
  • document sections,
  • 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

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

Source of documentation: https://github.com/pdfmake/docs Improvements are welcome!

Building from sources

using npm:

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

using yarn:

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

License

MIT

Authors

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

Thanks to all contributors.


Overview (`dev-playground/README.md`)

Dev Playground

Start from pdfmake ROOT directory with nodemon if you want server to restart with every change you make in pdfmake/src:

text
cd dev-playground
npm install # or: yarn
npm install nodemon
cd ..
nodemon ./dev-playground/server.js

--- METRICS ---