Skip to main content

The Python library for PDF forms.

Project description

PDF Form Automation Simplified – Create, Merge, Style, and Fill Forms Programmatically.

Introduction

PyPDFForm is a Python library for PDF form processing. It contains the essential functionalities needed to interact with PDF forms:

  • Inspect what data a PDF form needs to be filled with.
  • Fill a PDF form by simply creating a Python dictionary.
  • Create form fields on a PDF.

It also supports other common utilities such as extracting pages and merging multiple PDFs together.

Installing

Install using pip:

pip install PyPDFForm

Quick Example

Check out the GitHub repository for a live demo if you can't see it here.

A sample PDF form can be found here. Download it and try:

from PyPDFForm import PdfWrapper

filled = PdfWrapper("sample_template.pdf", need_appearances=True).fill(
    {
        "test": "test_1",
        "check": True,
        "test_2": "test_2",
        "check_2": False,
        "test_3": "test_3",
        "check_3": True,
    },
)

filled.write("output.pdf")

After running the above code snippet you can find output.pdf at the location you specified, and it should look like this.

Documentation

The official documentation can be found on the GitHub page of this repository.

Other Resources

Star History

This project is maintained entirely in my spare time. If you like the project please consider starring the GitHub repository. It is the best way to keep me motivated and continue making the project better.

Stargazers over time

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

pypdfform-4.8.1.tar.gz (139.4 kB view details)

Uploaded Source

Built Distribution

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

pypdfform-4.8.1-py3-none-any.whl (152.4 kB view details)

Uploaded Python 3

File details

Details for the file pypdfform-4.8.1.tar.gz.

File metadata

  • Download URL: pypdfform-4.8.1.tar.gz
  • Upload date:
  • Size: 139.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pypdfform-4.8.1.tar.gz
Algorithm Hash digest
SHA256 9475d08adf947b956f1e53502532be76994e9d3c37bf0111fd17e28c6eebc134
MD5 e8df9e9bf060d52b2e0e7fc504398656
BLAKE2b-256 c5656bda090570943cb0a28477f9f949629366e11b8c9c31650473af1a409887

See more details on using hashes here.

File details

Details for the file pypdfform-4.8.1-py3-none-any.whl.

File metadata

  • Download URL: pypdfform-4.8.1-py3-none-any.whl
  • Upload date:
  • Size: 152.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pypdfform-4.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8ac6cf654509a6e3d43804e87fcc71f4337c4a7bf4157bbbaef3fb78fc64f2e3
MD5 4150274d7c38bb5fd5231a187a7c88e0
BLAKE2b-256 41a2f893e85e00ad5dc1da6242db708ffb7635574ffb152cc6ed20760a65bb73

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