Skip to main content

Simple PDF generation for Python

Project description

build status Pypi latest version License: LGPL v3 codecov

Pull Requests Welcome first-timers-only Friendly -> come look at our good first issues

fpdf2

fpdf2 logo

fpdf2 is a minimalist PDF creation library for Python:

from fpdf import FPDF

document = FPDF()
document.add_page()
document.set_font('Arial', size=12)
document.cell(w=0, txt="hello world")
document.output("hello_world.pdf")

Compared with other PDF libraries, fpdf2 is simple, small and versatile, with advanced capabilities, and is easy to learn, extend and maintain.

Looking for Developer Help!

Installation Instructions:

pip install fpdf2

To get the latest development version:

# Linux only:
sudo apt-get install libjpeg-dev libpython-dev zlib1g-dev # libpython3.3-dev #(if necessary)

# Linux and Windows:
git clone https://github.com/PyFPDF/fpdf2.git
cd pyfpdf
python setup.py install

Features:

  • Python 3.6+ support (2.7 not supported since version 2.1)
  • Unicode (UTF-8) TrueType font subset embedding
  • Internal/External Links
  • PNG, GIF and JPG support (including transparency and alpha channel)
  • Shape, Line Drawing
  • Generate Code 39 & Interleaved 2 of 5 barcodes
  • Cell/Multi-cell/Plaintext writing, Automatic page breaks
  • Basic conversion from HTML to PDF
  • Clean error handling through exceptions
  • Only one dependency so far: Pillow
  • Unit tests with qpdf-based PDF diffing

Release notes: CHANGELOG.md

Documentation:

Also read the design-spec/tests, they're great.

Developers:

Please check the docs page dedicated to developpement.

Lets try to improve the Code Coverage statistic so that we can safely transition to external font and image libraries, and more...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fpdf2-2.2.0.tar.gz (50.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fpdf2-2.2.0-py2.py3-none-any.whl (73.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file fpdf2-2.2.0.tar.gz.

File metadata

  • Download URL: fpdf2-2.2.0.tar.gz
  • Upload date:
  • Size: 50.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for fpdf2-2.2.0.tar.gz
Algorithm Hash digest
SHA256 9903081bad9bb6c242ad533911e40c98410cce96aa1c03ad7794f376d8dd442f
MD5 477b24dccb5cdc5d4d33ea0ce49465f8
BLAKE2b-256 6404ce445ad42d8ade515a53f8758a5ff749529e5c1cde87f8b2345257555b9e

See more details on using hashes here.

File details

Details for the file fpdf2-2.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: fpdf2-2.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 73.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for fpdf2-2.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d8520795e40f5d9a1722b4630138cc91358eac269643961e99ba699338dd55df
MD5 a6e4d722dedc4801ffb7b6adf5a1514a
BLAKE2b-256 065e5e4db1806a0725bb2de718f7d70b2b6c4f39baffc0f8fff098e1de478145

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page