Create PDF from Sphinx using WeasyPrint.
Go to file
Kujiu 76baca06b4
First commit
2020-06-10 22:14:35 +02:00
build/lib/sphinx_weasyprint_builder First commit 2020-06-10 22:14:35 +02:00
sphinx_weasyprint_builder First commit 2020-06-10 22:14:35 +02:00
.gitignore First commit 2020-06-10 22:14:35 +02:00
AUTHORS First commit 2020-06-10 22:14:35 +02:00
CHANGES First commit 2020-06-10 22:14:35 +02:00
LICENSE First commit 2020-06-10 22:14:35 +02:00
LICENSE-de First commit 2020-06-10 22:14:35 +02:00
LICENSE-fr First commit 2020-06-10 22:14:35 +02:00
LICENSE-nl First commit 2020-06-10 22:14:35 +02:00
README.rst First commit 2020-06-10 22:14:35 +02:00
babel.cfg First commit 2020-06-10 22:14:35 +02:00
requirements.txt First commit 2020-06-10 22:14:35 +02:00
setup.cfg First commit 2020-06-10 22:14:35 +02:00
setup.py First commit 2020-06-10 22:14:35 +02:00

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.

Use

Just launch the following:

make weasyprint

Signing

Following parameters are needed to sign:

weasyprint_sign_method = 'pkcs11'
weasyprint_sign_certid = '0x..........'
weasyprint_sign_reason = 'My Company'
weasyprint_sign_location = 'Where I am'
weasyprint_sign_contact = "Yeah, it's me"
weasyprint_sign_image = 'path_to_image'
weasyprint_sign_text = __('Signed on {sign_date}\nat {sign_location}\nby {sign_contact}\nfor {sign_reason}') #default
weasyprint_sign_position = (page, x, y) #default: None

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>