
Security News
Node.js Homepage Adds Paid Support Link, Prompting Contributor Pushback
A new Node.js homepage button linking to paid support for EOL versions has sparked a heated discussion among contributors and the wider community.
docs-to-pdf
Advanced tools
This is a PDF generator from document website such as docusaurus
. This is a fork of mr-pdf which was not maintained anymore.
Feel free to contribute to this project.
For Docusaurus v2
npx docs-to-pdf --initialDocURLs="https://docusaurus.io/docs/" --contentSelector="article" --paginationSelector="a.pagination-nav__link.pagination-nav__link--next" --excludeSelectors=".margin-vert--xl a,[class^='tocCollapsible'],.breadcrumbs,.theme-edit-this-page" --coverImage="https://docusaurus.io/img/docusaurus.png" --coverTitle="Docusaurus v2"
Option | Required | Description |
---|---|---|
--initialDocURLs | Yes | set URL to start generating PDF from. |
--contentSelector | Yes | used to find the part of main content |
--paginationSelector | Yes | CSS Selector used to find next page to be printed for looping. |
--excludeURLs | No | URLs to be excluded in PDF |
--excludeSelectors | No | exclude selectors from PDF. Separate each selector with comma and no space. But you can use space in each selector. ex: --excludeSelectors=".nav,.next > a" |
--cssStyle | No | CSS style to adjust PDF output ex: --cssStyle="body{padding-top: 0;}" *If you're project owner you can use @media print { } to edit CSS for PDF. |
--outputPDFFilename | No | name of the output PDF file. Default is docs-to-pdf.pdf |
--pdfMargin | No | set margin around PDF file. Separate each margin with comma and no space. ex: --pdfMargin="10,20,30,40" . This sets margin top: 10px, right: 20px, bottom: 30px, left: 40px |
--paperFormat | No | pdf format ex: --paperFormat="A3" . Please check this link for available formats Puppeteer document |
--disableTOC | No | Optional toggle to show the table of contents or not |
--coverTitle | No | Title for the PDF cover. |
--coverImage | No | <src> Image for PDF cover (does not support SVG) |
--coverSub | No | Subtitle the for PDF cover. Add <br/> tags for multiple lines. |
--headerTemplate | No | HTML template for the print header. Please check this link for details of injecting values Puppeteer document |
--footerTemplate | No | HTML template for the print footer. Please check this link for details of injecting values Puppeteer document |
--puppeteerArgs | No | Add puppeteer BrowserLaunchArgumentOptions arguments ex: --sandbox Puppeteer document |
--protocolTimeout | No | Timeout setting for individual protocol calls in milliseconds. If omitted, the default value of 180000 ms (3 min) is used |
--filterKeyword | No | Only adds pages to the PDF containing a given meta keywords. Makes it possible to generate PDFs of selected pages |
--baseUrl | No | Base URL for all relative URLs. Allows to render the pdf on localhost (ci/Github Actions) while referencing the deployed page. |
--excludePaths | No | URL Paths to be excluded |
--restrictPaths | No | Keep Only URL Path with the same rootPath as --initialDocURLs |
initialDocURLs
: https://docusaurus.io/docs
demoPDF
: https://github.com/jean-humann/docs-to-pdf/blob/master/pdf/v2-docusaurus.pdf
command
:
npx docs-to-pdf --initialDocURLs="https://docusaurus.io/docs/" --contentSelector="article" --paginationSelector="a.pagination-nav__link.pagination-nav__link--next" --excludeSelectors=".margin-vert--xl a,[class^='tocCollapsible'],.breadcrumbs,.theme-edit-this-page" --coverImage="https://docusaurus.io/img/docusaurus.png" --coverTitle="Docusaurus v2"
initialDocURLs
: https://docusaurus.io/docs/en/installation
demoPDF
: https://github.com/jean-humann/docs-to-pdf/blob/master/pdf/v1-docusaurus.pdf
command
:
npx docs-to-pdf --initialDocURLs="https://docusaurus.io/docs/en/installation" --contentSelector="article" --paginationSelector=".docs-prevnext > a.docs-next" --excludeSelectors=".fixedHeaderContainer,footer.nav-footer,#docsNav,nav.onPageNav,a.edit-page-link,div.docs-prevnext" --cssStyle=".navPusher {padding-top: 0;}" --pdfMargin="20"
docs-to-pdf
workspage.pdf()
from puppeteer to generate PDF.This repo's code is coming from https://github.com/KohheePeace/mr-pdf.
Thanks for awesome code made by @KohheePeace, @maxarndt and @aloisklink.
@bojl approach to make TOC was awesome and breakthrough.
FAQs
Generate PDF from Docusaurus
The npm package docs-to-pdf receives a total of 391 weekly downloads. As such, docs-to-pdf popularity was classified as not popular.
We found that docs-to-pdf demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
A new Node.js homepage button linking to paid support for EOL versions has sparked a heated discussion among contributors and the wider community.
Research
North Korean threat actors linked to the Contagious Interview campaign return with 35 new malicious npm packages using a stealthy multi-stage malware loader.
Research
Security News
The Socket Research Team investigates a malicious Python typosquat of a popular password library that forces Windows shutdowns when input is incorrect.