Repository: bpampuch/pdfmake
Stars: 12259
README.md
pdfmake [![Node.js CI][githubactions_img]][githubactions_url] [![GitHub][github_img]][github_url] [![npm][npm_img]][npm_url]
[githubactions_img]: https://github.com/bpampuch/pdfmake/actions/workflows/node.js.yml/badge.svg?branch=master
[githubactions_url]: https://github.com/bpampuch/pdfmake/actions
[github_img]: https://img.shields.io/github/release/bpampuch/pdfmake.svg?colorB=0E7FBF
[github_url]: https://github.com/bpampuch/pdfmake/releases/latest
[npm_img]: https://img.shields.io/npm/v/pdfmake.svg?colorB=0E7FBF
[npm_url]: https://www.npmjs.com/package/pdfmake
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:
git clone https://github.com/bpampuch/pdfmake.git
cd pdfmake
npm install
npm run buildusing yarn:
git clone https://github.com/bpampuch/pdfmake.git
cd pdfmake
yarn
yarn run buildLicense
MIT
Authors
* @bpampuch (founder)
* @liborm85
pdfmake is based on a truly amazing library pdfkit (credits to @devongovett).
Thanks to all contributors.