Skip to main content

PDF Form Automation Simplified - Create, Inspect, Style, and Fill Forms in Python or from the Command Line.

Introduction

PyPDFForm is a Python library and command line tool for working with PDF forms. It provides Python APIs and CLI commands for creating, inspecting, updating, and filling forms, plus common PDF utilities.

With PyPDFForm, you can:

  • Create PDF forms, form fields, and raw elements.
  • Inspect form fields, metadata, and values.
  • Update field styling, behavior, and scripts.
  • Fill PDF forms.
  • Extract pages and merge PDFs.

The goal is to make PDF form work straightforward, whether you are handling one document or building a larger workflow.

Installing

To use PyPDFForm as a Python library, install the base package with pip:

pip install PyPDFForm

To use the CLI, install PyPDFForm with the cli extra using pipx:

pipx install "PyPDFForm[cli]"

Quick Example

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

The GIF above shows the CLI filling a PDF form. To try the same workflow with the Python library, download the sample PDF form and run:

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 this snippet, output.pdf will be written to the location you specified and should look like this.

Documentation

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

Other Resources

Metadata

Release files for PyPDFForm 6.1.0

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

Source distribution (sdist)

Source distribution for PyPDFForm 6.1.0
File Size Uploaded Provenance Actions
pypdfform-6.1.0.tar.gz 118.7 kB Without provenance Details for pypdfform-6.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for PyPDFForm 6.1.0
File Interpreter ABI Platform Actions
pypdfform-6.1.0-py3-none-any.whl Python 3 none any Details for pypdfform-6.1.0-py3-none-any.whl

Total release size: 239.7 kB

Release files / pypdfform-6.1.0.tar.gz

Download URL pypdfform-6.1.0.tar.gz
Size 118.7 kB
Tags Source
SHA-256 checksum
How to use checksums
9569f89b0002fac37e512e1424d482fcd61863b705f5cf11d3c53ff73de77b8c
BLAKE2b-256 checksum
How to use checksums
4ad9b599ecabe684bd170b6b328929cddecc0a40928cce5bddd7f6c751fb7ecc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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}

Release files / pypdfform-6.1.0-py3-none-any.whl

Download URL pypdfform-6.1.0-py3-none-any.whl
Size 121.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
418474c5497008cd21eb101ef6855e4475719bbb23b58f840cf0dfb411091e77
BLAKE2b-256 checksum
How to use checksums
089befd758ab319d1f24f184d3549d6ec7dbd267947650e650f990f6769390a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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}

Security for PyPDFForm 6.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

6.1.0 This release

2 release files No provenance

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