Render Html to PDFs using Pagedjs and Puppeteer.
npm install -g pagedjs-cli
pagedjs-cli ./path/to/index.html -o result.pdf
-h, --help output usage information
-V, --version output the version number
-i, --inputs [inputs] Inputs
-o, --output [output] Output
-d, --debug Show Electron Window to Debug
-l, --landscape Landscape printing
-s, --page-size [size] Print to Page Size [size]
-w, --width [size] Print to Page Width [width]
-h --height [size] Print to Page Height [weight]
-m, --page-margin [margin] Print with margin [margin]
-n, --hyphenate [lang] Hyphenate with language [language], defaults to "en-us"
-hi, --hypher_ignore [str] Ignore passed element selectors, such as ".class_to_ignore, h1"
-ho, --hypher_only [str] Only hyphenate passed elements selector, such as ".hyphenate, aside"
-e, --encoding [type] Set the encoding of the input html, defaults to "utf-8"
-t, --timeout [ms] Set a max timeout of [ms]
--outline-tags [tags] Specifies that an outline should be generated for the resulting PDF document. [tags] specifies which HTML tags should be considered for that outline. "h1,h2" will trigger an outline with "h1" tags as root elements and "h2" elements as their childs.
--additional-script <script> Additional script tags which are added to the HTML document before rendering. This is useful for adding custom pagedjs handlers. The option can be repeated. (default: [])
HTML can be pre-processed with soft hyphens by the Hypher library.
Pass the abbreviation a language code (such as en-us
or de
) when calling the renderer. You can install languages beyond those included the package.json using npm.
pagedjs-cli ./path/to/index.html --hyphenate en-us --output
Link and build the JS
npm install
npm link
npm install -g gulp
gulp watch
To display the output in the browser window before printing,
instead of outputting the file add the --debug
flag.
pagedjs-cli ./path/to/index.html --debug
Install Mocha with npm install -g mocha
Run the tests from the library root with the mocha
command
mocha
Build the Docker image
docker build -t pagedmedia/pagedjs-cli .
Run the Docker image
docker run -it --security-opt 'seccomp=seccomp.json' pagedmedia/pagedjs-cli bash