Skip to content

py-pdf/pdfly

Repository files navigation

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

build status GitHub last commit issues closed PRs closed

Code style: black Pull Requests Welcome first-timers-only Friendly

pdfly

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

Installation

pip install -U pdfly

As pdfly is an application, you might want to install it with pipx.

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.            │
│ cat                       Concatenate pages from PDF files into a single PDF file.   │
│ compress                  Compress a PDF.                                            │
| uncompress                Uncompresses 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.                               │
│ 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.                                          │
╰──────────────────────────────────────────────────────────────────────────────────────╯

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

🤔

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.