Create PDF from Sphinx using WeasyPrint.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Kujiu 23da56a41c
Fix #1: UnicodeDecodeError on Windows10
2 years ago
sphinx_weasyprint_builder Fix #1: UnicodeDecodeError on Windows10 2 years ago
.gitignore First commit 3 years ago
AUTHORS First commit 3 years ago
CHANGES Fix #1: UnicodeDecodeError on Windows10 2 years ago
LICENSE First commit 3 years ago
LICENSE-de First commit 3 years ago
LICENSE-fr First commit 3 years ago
LICENSE-nl First commit 3 years ago
README.rst Initial release 3 years ago
babel.cfg Add locale files 3 years ago
requirements.txt New git home 3 years ago
setup.cfg First commit 3 years ago
setup.py Fix #1: UnicodeDecodeError on Windows10 2 years ago

README.rst

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> </head>

Sphinx WeasyPrint builder

Sphinx WeasyPrint builder is a PDF generator for Sphinx without usage of LaTeX.

Install

You can install it with pip:

pip install sphinx_weasyprint_builder

Or with setup.py:

python setup.py install

Configuration

You can configure your output with these options:

  • weasyprint_basename

  • weasyprint_theme

  • weasyprint_theme_options

  • weasyprint_title

  • weasyprint_theme_path

  • weasyprint_short_title

  • weasyprint_style

  • weasyprint_css_files

  • weasyprint_show_copyright

  • weasyprint_show_sphinx

Each one has the same behavior of its equivalent for html builder.

In addition, you can set these three variables:

  • weasyprint_main_selector

  • weasyprint_footer_selector

  • weasyprint_header_selector

This builder analyzes generated HTML to extract with BeautifulSoup a footer and a header. They are removed from main HTML and reinjected on each page, conforming to theme's CSS. By default, no header and no footer.

Use compatible selectors for BeautifulSoup.

Use

Just launch the following:

make weasyprint

Why an other PDF builder for Sphinx?

LaTeX is really hard to use and to personalize. There's also an other project to make PDF without LaTeX.

WeasyPrint converts HTML to PDF. It's the easiest way to customize theme and use a constant quality whatever the media is. If your HTML theme doesn't have any JavaScript, you can imagine use the same as HTML and PDF output.

This plugin is just singlehtml output with conversion to PDF.

</html>