| 1 |
PyMuPDF |
|
10/10 |
1 | 2 | 1 | 2 | 2 | 1 | 2 | 1 | 1 | 2 |
- Claude Haiku 5.5 (#1) Fast and feature-rich for reading, editing, and filling forms; AGPL licensing is a caveat.
- Gemini 4 Argon (#1) Blazingly fast all-in-one toolkit for reading, editing, annotating, and filling PDF forms effortlessly.
- GLM-5.3 (#1) Fastest, most capable reader/editor; fills forms, edits text, renders pages.
- MiniMax M3 (#1) Fast, full-featured; best all-around for reading, editing, filling.
- Mistral Large 4 (#1) Fastest, most powerful, excellent for complex PDF text/image editing and filling.
- GPT-6 Luna (#2) Excellent fast PDF reading and editing, with strong text extraction and annotation support.
- Qwen 3.8 Flash (#2) Fastest rendering, text extraction, redaction, and form filling.
- DeepSeek V4.1 Flash (#2) Fastest, most capable rendering and text extraction, plus form widgets.
- Kimi K3 (#2) Fastest library, great for reading text, images, and annotations
- Nemotron 3.5 Super VL (#2) Fast rendering, editing, text extraction, and annotation support.
|
| 2 |
pypdf |
|
10/10 |
2 | 1 | 2 | 1 | 1 | 3 | 1 | 3 | 7 | 7 |
- GPT-6 Luna (#1) Best all-around pure-Python choice for reading, editing, merging, splitting, and filling AcroForms.
- Qwen 3.8 Flash (#1) Pure-Python, actively maintained, best free reading and editing.
- DeepSeek V4.1 Flash (#1) Best all-round free choice for reading, merging, and filling AcroForm PDFs.
- Kimi K3 (#1) Pure Python, actively maintained, excellent for reading, merging, and filling forms
- Claude Haiku 5.5 (#2) Pure-Python, actively maintained, handles reading, editing, merging and basic form field filling.
- Gemini 4 Argon (#2) The standard pure-Python library for splitting, merging, reading, and filling PDF forms reliably.
- GLM-5.3 (#3) Pure-Python standard for merging, splitting, and form filling.
- MiniMax M3 (#3) Pure Python, reliable for merging, splitting, filling forms.
- Nemotron 3.5 Super VL (#7) Maintained PyPDF2 fork for reading and editing PDF files.
|
| 3 |
PDFPlumber |
|
10/10 |
3 | 4 | 5 | 7 | 3 | 5 | 3 | 2 | 2 | 4 |
- MiniMax M3 (#2) Excellent for precise text and table extraction from PDFs.
- Mistral Large 4 (#2) Superb for extracting tables and structured text from PDFs.
- Claude Haiku 5.5 (#3) Excellent for extracting text, tables, and coordinates; less suited to form filling.
- DeepSeek V4.1 Flash (#3) Unmatched for precise text and table extraction and layout inspection.
- Kimi K3 (#3) Best for extracting tables and text with precise layout info
- GPT-6 Luna (#4) Best suited to extracting text and tables; limited for modifying or filling PDFs.
- Nemotron 3.5 Super VL (#4) Extract text and tables with precise layout from PDFs.
- Gemini 4 Argon (#5) Best-in-class for precise text and table reading, with visual debugging and basic page handling.
- GLM-5.3 (#5) Excellent text/table extraction; read-only, not for editing.
|
| 4 |
pdfrw |
|
10/10 |
4 | 5 | 6 | 3 | 7 | 8 | 5 | 7 | 4 | 3 |
- Qwen 3.8 Flash (#3) Lightweight read/write and page merging with reportlab integration.
- Nemotron 3.5 Super VL (#3) Read and write PDFs, useful for form filling and merging.
- Claude Haiku 5.5 (#4) Lightweight and simple for reading and filling AcroForm fields, though less maintained.
- Mistral Large 4 (#4) Lightweight, perfect for simple form filling and basic PDF manipulation.
- GPT-6 Luna (#5) Useful lightweight library for reading and modifying existing PDFs, especially form templates.
- Kimi K3 (#5) Lightweight, reliable for form filling and PDF manipulation
- Gemini 4 Argon (#6) Lightweight pure-Python library commonly used for reading, watermarking, and filling interactive PDF forms.
- DeepSeek V4.1 Flash (#7) Lightweight AcroForm filling and page-level manipulation, simple to script.
- MiniMax M3 (#7) Lightweight pure-Python reader/writer for basic PDF edits.
- GLM-5.3 (#8) Manipulates PDFs as data; aging but handy for templating.
|
| 5 |
ReportLab |
|
10/10 |
7 | 8 | 9 | 5 | 5 | 4 | 4 | 4 | 6 | 5 |
- GLM-5.3 (#4) Best for generating PDFs from scratch; limited editing of existing files.
- Kimi K3 (#4) Industry standard for creating and filling PDFs from scratch
- MiniMax M3 (#4) Best for generating PDFs programmatically from scratch.
- DeepSeek V4.1 Flash (#5) Go-to for generating filled, styled PDFs and overlaying content.
- Nemotron 3.5 Super VL (#5) Generate and manipulate PDFs programmatically from scratch.
- Mistral Large 4 (#6) Best for generating new PDFs from scratch with precise layout control.
- Claude Haiku 5.5 (#7) Best for generating PDFs from scratch rather than editing existing ones, so narrower fit.
- GPT-6 Luna (#8) Strong for generating PDFs and overlays, but not a general-purpose editor for existing files.
- Gemini 4 Argon (#9) Industry standard for generating PDFs and overlaying text onto existing forms alongside reader libraries.
|
| 6 |
pikepdf |
|
8/10 |
6 | 7 | 3 | 4 | 4 | 2 | | | 3 | 9 |
- GLM-5.3 (#2) Robust low-level editing, qpdf-powered; great for restructuring and repair.
- Gemini 4 Argon (#3) QPDF-powered library offering unmatched low-level PDF manipulation, editing, and structural repair capabilities.
- Mistral Large 4 (#3) qpdf-powered, robust for repairing, optimizing, and structural PDF edits.
- Qwen 3.8 Flash (#4) QPDF-based structural editing, repair, encryption handling.
- DeepSeek V4.1 Flash (#4) Robust on malformed PDFs; excellent for structural edits and repairs.
- Claude Haiku 5.5 (#6) Strong low-level editing built on qpdf; good for structural changes, weaker on form-filling convenience.
|
| 7 |
PyPDF2 |
|
7/10 |
5 | 9 | | | 8 | 6 | 6 | | 5 | 1 |
- Nemotron 3.5 Super VL (#1) Read, merge, split, rotate, and edit PDFs in pure Python.
- Claude Haiku 5.5 (#5) Its predecessor to pypdf; still seen widely but now deprecated, so avoid for new work.
- Mistral Large 4 (#5) Most popular pure-Python library for merging, splitting, and basic edits.
- GLM-5.3 (#6) Legacy predecessor of pypdf; still widely used, but superseded.
- Kimi K3 (#6) Legacy but widely used, simple API for basic PDF tasks
- DeepSeek V4.1 Flash (#8) Widely known legacy option; still works but superseded by pypdf.
- GPT-6 Luna (#9) Popular legacy library for basic PDF reading, merging, and form filling.
|
| 8 |
borb |
|
7/10 |
| 3 | 8 | 9 | 6 | 7 | 7 | 6 | | |
- GPT-6 Luna (#3) Broad PDF toolkit with reading, writing, editing, and form features in Python.
- DeepSeek V4.1 Flash (#6) Modern pure-Python library with clean API for forms and layout.
- MiniMax M3 (#6) Modern library supporting creation, editing, and manipulation.
- GLM-5.3 (#7) Modern pure-Python library for creating and editing PDFs.
- Kimi K3 (#7) Modern library with clean API for reading, writing, and editing
- Gemini 4 Argon (#8) Comprehensive pure-Python library for reading, creating, modifying, and filling complex PDF layouts and forms.
|
| 9 |
PDFMiner |
|
6/10 |
8 | | | | 9 | 9 | 8 | 5 | | 6 |
- MiniMax M3 (#5) Mature library for detailed text and layout extraction.
- Nemotron 3.5 Super VL (#6) Extract text and metadata from PDF documents.
- Claude Haiku 5.5 (#8) Precise text extraction and layout analysis, but read-only with no editing or filling.
- Kimi K3 (#8) Powerful text extraction, especially for complex PDF layouts
- DeepSeek V4.1 Flash (#9) Deep text layout analysis and extraction, but weak for editing.
- GLM-5.3 (#9) Strong text extraction and analysis; no editing or form filling.
|
| 10 |
FillPdf |
|
4/10 |
| | 7 | | | 10 | | 8 | 9 | |
- Gemini 4 Argon (#7) Purpose-built wrapper that makes filling and flattening AcroForm PDFs dead simple in Python.
- Mistral Large 4 (#9) Simple wrapper specifically built for filling AcroForm PDF fields quickly.
- GLM-5.3 (#10) Simple, lightweight wrapper for filling form fields.
|
| 11 |
pypdfium2 |
|
1/10 |
| | 4 | | | | | | | |
- Gemini 4 Argon (#4) Fast, permissive PDFium bindings ideal for rendering, text extraction, and basic document editing.
|
| 12 |
Aspose.PDF |
|
2/10 |
| | 10 | 6 | | | | | | |
- Qwen 3.8 Flash (#6) Commercial-grade full editing and conversion API.
|
| 13 |
fpdf2 |
|
4/10 |
10 | | | | 10 | | 10 | | | 8 |
- Nemotron 3.5 Super VL (#8) Simple PDF generation with text and basic formatting.
- Kimi K3 (#10) Simple PDF generation with form support, easy to learn
|
| 14 |
PDFium |
|
1/10 |
| 6 | | | | | | | | |
- GPT-6 Luna (#6) Reliable rendering and text access through pypdfium2; editing and form workflows are more limited.
|
| 15 |
pdfme |
|
1/10 |
| | | | | | | | 8 | |
- Mistral Large 4 (#8) Modern, user-friendly for templating and filling PDF forms easily.
|