pdf

Extract text and tables, merge, split, create, and fill PDF documents programmatically.

Updated Feb 8, 2026
One-click install
npx skills add https://github.com/ramshan00/hackaton --skill pdf-ramshan00
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pdf
Source: https://github.com/ramshan00/hackaton/tree/main/Hackathon2-phase2/.claude/skills/pdf
Command: npx skills add https://github.com/ramshan00/hackaton --skill pdf-ramshan00

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pypdf, 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 command-line tools, and filling PDF forms—especially non-fillable ones—requires tedious manual coordinate mapping. This Skill consolidates PDF manipulation into one guided workflow with ready-to-run scripts. ## Core Features & Use Cases - Text and Table Extraction: Pull text, tables, and metadata from PDFs using pypdf, pdfplumber, and poppler-utils, with OCR support for scanned documents. - Document Manipulation: Merge, split, rotate, encrypt, watermark, and create PDFs with pypdf, reportlab, qpdf, and pdf-lib. - PDF Form Filling: Detect fillable form fields, extract field metadata to JSON, and fill forms either via native fields or text annotations for non-fillable PDFs, with bounding-box validation. - Use Case: Given a stack of non-fillable application forms, convert pages to images, define entry bounding boxes in fields.json, validate them visually, and produce completed PDFs automatically. ## Quick Start Use the pdf skill to extract all tables from the attached report.pdf and save them to an Excel file.

Frequently Asked Questions about pdf

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

FAQPage Schema
How do I extract tables from a PDF in Python?

Use pdfplumber's page.extract_tables() method to detect and extract tables from each PDF page. The results can be loaded into pandas DataFrames and exported to Excel, with custom table settings available for complex layouts.

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

Convert the PDF pages to PNG images, visually identify field locations, and define entry bounding boxes in a fields.json file. Then validate the boxes with check_bounding_boxes.py and add text annotations using fill_pdf_form_with_annotations.py.

What is the difference between pypdf and pdfplumber?

pypdf handles structural operations like merging, splitting, rotating, encryption, and form field updates. pdfplumber specializes in extracting text with layout and detecting tables, making it better for data extraction tasks.

Can I extract text from a scanned PDF?

Scanned PDFs contain images rather than text layers, so standard parsers return nothing. Convert pages to images with pdf2image and run OCR with pytesseract to recover the text content.

How do I merge or split PDFs from the command line?

Use qpdf with the --empty --pages syntax to merge files or select page ranges, and --split-pages to divide a document into groups. pdftk and pypdf offer equivalent merge and split operations.

Why does my filled PDF form not display values in some viewers?

Some viewers fail to render form values without appearance streams. The fill_fillable_fields.py script calls set_need_appearances_writer(True) so viewers regenerate field appearances, though this may trigger a save-changes prompt.