Merge, split and rotate PDFs in Python
Python functions that merge, split, extract, remove, rotate, crop and scale PDF pages into new files.
Page selections take numbers and ranges such as "1, 3-5"; all pages when omitted.
| Function | What it does | Returns |
|---|---|---|
merge(inputs, output) | Combine PDFs in order | Written |
split(path, output_folder, pages=, mode="ranges"|"pages") | One PDF per range or per page; the folder is created if missing | SplitResult |
extract_pages(path, pages, output) | Keep only some pages | Written |
remove_pages(path, pages, output) | Drop pages | Written |
rotate_pages(path, output, pages=, angle=90|180|270) | Rotate clockwise | Written |
resize_pages(path, output, mode="crop"|"scale", pages=, margin=24, factor=1) | Crop a margin (points) from each edge, or scale | Written |
Examples
import superpdf
superpdf.merge(["cover.pdf", "report.pdf", "appendix.pdf"], "full.pdf")
parts = superpdf.split("book.pdf", "chapters", pages="1-10, 11-20")
print([part["output"] for part in parts["outputs"]])
superpdf.extract_pages("report.pdf", "1, 3-5", "selected.pdf")
superpdf.remove_pages("report.pdf", "2", "without-page-2.pdf")
superpdf.rotate_pages("scan.pdf", "upright.pdf", pages="2", angle=180)
superpdf.resize_pages("slides.pdf", "trimmed.pdf", mode="crop", margin=36)All functions are listed on All functions.