Matthew Peveler 3fa29ea1c2 tooling: add black and flake8 for python formatting/linting (#6454) %!s(int64=3) %!d(string=hai) anos
..
README.md 896555f79e Updated the render.py README. %!s(int64=4) %!d(string=hai) anos
basic.css 6637acf662 scripts: add SPDX-License-Identifier in files (#6215) %!s(int64=3) %!d(string=hai) anos
pt-serif-web-regular.ttf e2ae506613 Rework PDF script (#3654) %!s(int64=5) %!d(string=hai) anos
render.py 3fa29ea1c2 tooling: add black and flake8 for python formatting/linting (#6454) %!s(int64=3) %!d(string=hai) anos
requirements.txt e2ae506613 Rework PDF script (#3654) %!s(int64=5) %!d(string=hai) anos
solarized-dark.css 6637acf662 scripts: add SPDX-License-Identifier in files (#6215) %!s(int64=3) %!d(string=hai) anos
solarized-light.css 6637acf662 scripts: add SPDX-License-Identifier in files (#6215) %!s(int64=3) %!d(string=hai) anos

README.md

pdf

This directory contains the script and related resources to generate a PDF document with all the tldr pages.

Preview

cryptsetup in the Basic color-scheme. cryptsetup in the Solarized Light color-scheme. cryptsetup in the Solarized Dark color-scheme.

Highlights

  • No LaTeX dependencies for generating the PDF.
  • 3 available color-schemes: Basic, Solarized Light and Solarized Dark. More can be added easily through CSS.

Requirements

The PDF is generated by first converting the Markdown files to HTML, and then rendering those HTML files as a PDF. It depends on the markdown and weasyprint libraries. To install the dependencies, run:

python3 -m pip install -r requirements.txt

Make sure OS specific dependencies for WeasyPrint are installed by following the instructions here.

Usage

Generating the PDF is as simple as running:

python3 render.py <path-to-pages-directory> --color <color-scheme>

Complete information about the arguments can be viewed by running:

python3 render.py --help

The color-schemes that can be specified are:

  • basic
  • solarized-light
  • solarized-dark