Skip to main content
https://img.shields.io/pypi/v/rst2pdf.svg https://img.shields.io/pypi/pyversions/rst2pdf.svg https://img.shields.io/pypi/l/rst2pdf.svg

rst2pdf: Use a text editor. Make a PDF.

The usual way of creating PDF from reStructuredText is by going through LaTeX. This tool provides an alternative by producing PDF directly using the ReportLab library.

More information is available at the main website.

Features

  • User-defined page layout. Multiple frames per page, multiple layouts per document.

  • Page transitions

  • Cascading stylesheet mechanism, define only what you want changed.

  • Supports TTF and Type1 font embedding.

  • Any number of paragraph styles using the class directive.

  • Any number of character styles using text roles.

  • Custom page sizes and margins.

  • Syntax highlighter for many languages, using Pygments.

  • Supports embedding almost any kind of raster or vector images.

  • Supports hyphenation.

  • Sphinx integration

  • Full user’s manual

Installation

rst2pdf supports Python 3.10 or greater. Version 0.103 was the last version to support Python 3.9 Version 0.102 was the last version to support Python 3.8.

Install from PyPI (pipx)

The latest released version may be installed from PyPI by using pipx:

$ pipx install rst2pdf

rst2pdf also has support for a number of features that require additional dependencies. Installation of all the required dependencies using pipx may be installed using:

$ pipx install rst2pdf[aafiguresupport,mathsupport,plantumlsupport,rawhtmlsupport,sphinx,svgsupport]

Install from PyPI (uv)

As with pipx above, the latest released version may be installed from PyPI by using uv:

$ uv tool install rst2pdf

If you don’t have uv, please see the installation docs

Installation of all the required dependencies using uv may be installed using:

$ uv tool install rst2pdf[aafiguresupport,mathsupport,plantumlsupport,rawhtmlsupport,sphinx,svgsupport]

Install from Snap

If you are using a system that supports snaps then you can install from there with:

$ snap install rst2pdf

Install from GitHub

Work on rst2pdf has restarted on GitHub, with the goals of adding new features, addressing outstanding issues, and not breaking anything. You can clone the repository and install this version:

$ git clone https://github.com/rst2pdf/rst2pdf
$ cd rst2pdf
$ git checkout <desired-branch> # if you want something other than main
$ uv tool install .[aafiguresupport,mathsupport,plantumlsupport,rawhtmlsupport,sphinx,svgsupport]

If you intend to work on rst2pdf’s source code, see doc/DEVELOPERS.rst.

Usage

To convert a reStructuredText document to a PDF, simply run:

$ rst2pdf <document name> output.pdf

For information on available options, use -h:

$ rst2pdf -h

To enable basic integration with Sphinx, modify your conf.py file to enable the rst2pdf.pdfbuilder extension and configure the pdf_documents option. For example:

extensions = [
    # ...
    'rst2pdf.pdfbuilder',
]

# Grouping the document tree into PDF files. List of tuples
# (source start file, target name, title, author, options).
pdf_documents = [
    ('index', 'MyProject', 'My Project', 'Author Name'),
]

For information on the pdf_documents option and the many other options available, refer to the manual.

Contributing

See CONTRIBUTING.

Code of conduct

rst2pdf is an inclusive and welcoming community. To participate in this project, everyone is bound by our Community Code of Conduct.

Metadata

Release files for rst2pdf 0.105

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rst2pdf 0.105
File Size Uploaded
rst2pdf-0.105.tar.gz 12.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for rst2pdf 0.105
File Interpreter ABI Platform
rst2pdf-0.105-py3-none-any.whl Python 3 none any Details

Total release size: 12.5 MB

Release files / rst2pdf-0.105.tar.gz

Download URL rst2pdf-0.105.tar.gz
Size 12.3 MB
Tags Source
SHA-256 checksum
How to use checksums
857e8741014ec5015f7a00aafb5dccbb56378ef4c1da55a828d44bcf5ff3acdb
BLAKE2b-256 checksum
How to use checksums
358ab5bf70d3994344f4d3af5f647e49c8f50c7922202353f01bd3a6fa102fdb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / rst2pdf-0.105-py3-none-any.whl

Download URL rst2pdf-0.105-py3-none-any.whl
Size 179.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e7b1bd345d45841b72eba0046f67473f34783871606269745f5602e38624553a
BLAKE2b-256 checksum
How to use checksums
513660ebfd86adbe8321515cc5acfac047fed552708edb6c8220951c43d96e49
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.105 This release

2 release files

0.104

2 release files

0.103

2 release files

0.102

2 release files

0.101

2 release files

0.100

2 release files

0.99

2 release files

0.98

2 release files

0.97

2 release files

0.96

2 release files

0.95.1

2 release files

0.95

2 release files

0.94.1

2 release files

0.94

2 release files

0.93

0.92

1 release file

0.91

1 release file

0.90

1 release file

0.16

0.14.2

1 release file

0.14.1

1 release file

0.14

1 release file

0.13.1

1 release file

0.13

0.12.2

1 release file

0.12.1

1 release file

0.12

1 release file

0.11

1 release file

0.10.1

1 release file

0.9

2 release files

0.8.1

2 release files

0.8

2 release files

0.7

2 release files

0.6

2 release files

0.5

2 release files

0.4

2 release files

0.3

2 release files

0.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page