https://github.com/bytespider/pagedjs-cli-old
https://github.com/bytespider/pagedjs-cli-old
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/bytespider/pagedjs-cli-old
- Owner: bytespider
- License: mit
- Created: 2021-01-12T18:09:24.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-12-13T22:48:38.000Z (over 3 years ago)
- Last Synced: 2025-04-05T18:52:12.103Z (about 1 year ago)
- Language: HTML
- Size: 7.09 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PagedJS PDF Renderer
Render Html to PDFs using [Pagedjs](https://gitlab.pagedmedia.org/polyfills/pagedjs) and [Puppeteer](https://github.com/GoogleChrome/puppeteer).
## Installation
```
npm install -g pagedjs-cli
```
## Generating a PDF
```
pagedjs-cli ./path/to/index.html -o result.pdf
```
## Options
```
-V, --version output the version number
-i, --inputs [inputs] Inputs
-o, --output [output] Output
-d, --debug Debug
-l, --landscape Landscape printing (default: false)
-s, --page-size [size] Print to Page Size [size]
-w, --width [size] Print to Page Width [width] in MM
-h --height [size] Print to Page Height [weight] in MM
-t, --timeout [ms] Set a max timeout of [ms]
-x, --html output html file
-b, --blockLocal Disallow access to filesystem for local files
-r, --blockRemote Disallow requests to remote servers
--allowedPath [allowedPaths] Only allow access to given filesystem paths, repeatable. (default: [])
--allowedDomain [allowedDomains] Only allow access to given remote domains, repeatable (default: [])
--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 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: [])
--browserEndpoint Use a remote Chrome server with browserWSEndpoint
```
## Hyphenation
HTML can be pre-processed with soft hyphens by the [Hypher](https://github.com/bramstein/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
```
## Development
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
```
## Testing
Install Mocha with `npm install -g mocha`
Run the tests from the library root with the `mocha` command
```
mocha
```
## Docker
Build the Docker image
```bash
docker build -t pagedmedia/pagedjs-cli .
```
Run the Docker image
```bash
docker run -it --security-opt 'seccomp=seccomp.json' pagedmedia/pagedjs-cli bash
```