docusaurs-prince-pdf
v1.0.2
Published
Extract rendered data from Docusaurus and generate PDF, the hard way
Readme
OpenBayes Documentation PDF Generator
Extract rendered data from Docusaurus and generate PDF, the hard way
This project is using the method 1 for generating PDF. You must Prince installed on your local machine.
The following methods can be used to generate PDF from Docusaurus sites:
Method 1: Prince
The good:
- Best font subsetting support
- Text can be selected and copy/paste correctly
- Fancy ToC
The bad:
- Doesn't work well with Docusaurus sites. Page content got cut off. Issue reported (now fixed!)
- Watermark on generated PDF make it hard to handle in CI/CD environments
- Doesn't work with some CSS syntax (e.g.
mask-image)
The ugly:
- Commercial license is expensive ($3,800)
Usage:
See help screen for details:
npx docusaurs-prince-pdf -hExample:
npx docusaurs-prince-pdf -u https://openbayes.com/To generate PDF from a local Docusaurus instance. You need to first build the site locally, then run the following command:
# Serve built site locally
yarn serve
# Generate PDF from local Docusaurus instance
node index -u http://localhost:4000 # Change port to your serving portMethod 2: mr-pdf
The good:
- Free and open-source
- Works with Docusaurus sites
- CI/CD friendly
- Based on Puppeteer make it works for most modern CSS syntax (e.g.
mask-image)
The bad:
- Doesn't work well with system Dark Mode. You will get a dark background in generated PDF. But it's not an issue in Ci/CD environments
- No ToC
The ugly:
- Based on Puppeteer make the text cannot be copied or searched correctly
- Link anchors (links start with
#) not well handled
Usage:
npx mr-pdf --initialDocURLs="https://openbayes.com/docs/" --paginationSelector=".pagination-nav__item--next > a" --contentSelector="article"