pdf

Extract, merge, split, create, and fill PDF documents using Python libraries and command-line tools.

Updated Jan 31, 2026
One-click install
npx skills add https://github.com/adrianasiam19/ATLAS --skill pdf-adrianasiam19
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: pdf
Source: https://github.com/adrianasiam19/ATLAS/tree/main/.agent/skills/pdf
Command: npx skills add https://github.com/adrianasiam19/ATLAS --skill pdf-adrianasiam19

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pypdf, pdfplumber, pdf2image, Pillow, and includes scripts (resource) and references (resource) components.

What problem does it solve? Working with PDF files programmatically is fragmented across many libraries and tools, making tasks like text extraction, form filling, merging, and OCR error-prone and time-consuming without clear guidance. ## Core Features & Use Cases - PDF Manipulation: Merge, split, rotate, encrypt, decrypt, and watermark PDFs using pypdf, qpdf, and pdftk. - Content Extraction: Extract text, tables, metadata, and embedded images with pdfplumber, pypdf, and poppler-utils, including OCR for scanned documents via pytesseract. - PDF Creation & Form Filling: Generate new PDFs with reportlab and fill both fillable and non-fillable PDF forms using dedicated scripts with coordinate validation. - Use Case: Given a stack of scanned application forms, convert them to images, determine field coordinates, validate bounding boxes, and produce filled PDFs automatically. ## Quick Start Use the pdf skill to merge the three attached PDF reports into a single document and extract the tables from page two into a spreadsheet.

Frequently Asked Questions about pdf

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I merge multiple PDF files in Python?▼

Use pypdf's PdfWriter to combine PDFs by adding pages from each source file with writer.add_page, then write the output. Alternatively, run qpdf --empty --pages file1.pdf file2.pdf -- merged.pdf from the command line.

How do I extract tables from a PDF document?▼

Use pdfplumber's page.extract_tables() method to detect and extract tables from each page. The results can be loaded into pandas DataFrames and exported to Excel for further analysis.

How do I fill a PDF form that has no fillable fields?▼

Extract the form structure with pdfplumber to get label and line coordinates, or estimate positions visually from rendered page images. Then add text annotations at those coordinates using the fill_pdf_form_with_annotations.py script after validating bounding boxes.

Can I extract text from a scanned PDF?▼

Scanned PDFs contain images rather than text layers, so standard extraction fails. Convert pages to images with pdf2image, then run pytesseract OCR on each image to recover the text content.

Why do subscript characters render as black boxes in reportlab PDFs?▼

ReportLab's built-in fonts lack Unicode subscript and superscript glyphs, so those characters render as solid boxes. Use the <sub> and <super> XML markup tags inside Paragraph objects instead.

What is the difference between pypdf and pdfplumber?▼

pypdf handles structural operations like merging, splitting, rotating, encryption, and form field updates. pdfplumber specializes in content extraction with precise layout coordinates, making it better for text and table extraction.