Skip to content

py-pdf/pdfly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pypi latest version Python Support License: BSD 3 Clause Documentation Status

build status GitHub last commit issues closed PRs closed

linters: black, ruff, mypi Pull Requests Welcome first-timers-only Friendly

pdfly

pdfly (say: PDF-li) is a pure-python cli application for manipulating PDF files.

pdfly logo

Installation

pip install -U pdfly

As pdfly is an application, you might want to install it with pipx or uv tool: uvx pdfly --help

Usage

$ pdfly --help

 Usage: pdfly [OPTIONS] COMMAND [ARGS]...

 pdfly is a pure-python cli application for manipulating PDF files.

╭─ Options ──────────────────────────────────────────────────────────────────────────────────────╮
│ --version                                                                                      │
│ --help             Show this message and exit.                                                 │
╰────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ─────────────────────────────────────────────────────────────────────────────────────╮
│ 2-up                      Create a booklet-style PDF from a single input.                      │
│ booklet                   Reorder and two-up PDF pages for booklet printing.                   │
│ cat                       Extract and concatenate pages from PDF files into a single PDF file. │
│ check-sign                Verifies the signature of a signed PDF.                              │
│ compress                  Compress a PDF.                                                      │
│ extract-annotated-pages   Extract only the annotated pages from a PDF.                         │
│ extract-images            Extract images from PDF without resampling or altering.              │
│ extract-text              Extract text from a PDF file.                                        │
│ meta                      Show metadata of a PDF file                                          │
│ pagemeta                  Give details about a single page.                                    │
│ rm                        Remove pages from PDF files.                                         │
│ rotate                    Rotate specified pages by the specified amount                       │
│ sign                      Creates a signed PDF from an existing PDF file.                      │
│ uncompress                Module for uncompressing PDF content streams.                        │
│ update-offsets            Updates offsets and lengths in a simple PDF file.                    │
│ x2pdf                     Convert one or more files to PDF. Each file is a page.               │
╰────────────────────────────────────────────────────────────────────────────────────────────────╯

You can see the help of every subcommand by typing --help:

$ pdfly 2-up --help

 Usage: pdfly 2-up [OPTIONS] PDF OUT

 Create a booklet-style PDF from a single input.
 Pairs of two pages will be put on one page (left and right)

 usage: python 2-up.py input_file output_file

╭─ Arguments ───────────────────────────────────────╮
│ *    pdf      PATH  [default: None] [required]    │
│ *    out      PATH  [default: None] [required]    │
╰───────────────────────────────────────────────────╯
╭─ Options ─────────────────────────────────────────╮
│ --help          Show this message and exit.       │
╰───────────────────────────────────────────────────╯

Note: pdfly has nothing to do with pdfly.net or gopdfly.com

Contributors ✨

pdfly is a free software project without any company affiliation. We cannot pay contributors, but we do value their contributions 🤗

Martin Thoma
Martin Thoma

💻 📖 🤔 🚇 🚧 📆
Lucas Cimon
Lucas Cimon

🐛 💻 📖 🚧
Rob Adams
Rob Adams

💻
Harsh
Harsh

💻
Sascha Rogmann
Sascha Rogmann

💻
Enrique Botía
Enrique Botía

💻
kommade
kommade

💻
Zingzy
Zingzy

💻
Subhajit Sahu
Subhajit Sahu

💻
Kian-Meng Ang
Kian-Meng Ang

🤔
Hal Wine
Hal Wine

🐛 💻
philippesamuel
philippesamuel

📖
marcobrb
marcobrb

📖
moormaster
moormaster

📖 💻
Geoff Beier
Geoff Beier

💻
Yuriy Chernyshov
Yuriy Chernyshov

🤔 💻

This project follows the all-contributors specification (emoji key). Contributions of any kind welcome!

The list might not be complete. You can find more contributors via the git history and GitHubs 'Contributors' feature.