Skip to main content

PDF Image Extractor

A lightweight Python application with a GUI to visualize and extract images from PDF files. The app displays PDF pages with red bounding boxes around detected images, allowing you to click on any box to save that image.

Features

  • 📄 Visual PDF Navigation: Browse through PDF pages with Previous/Next buttons or jump to specific pages
  • 🎯 Popup Image Preview: Hover over image descriptions to see a popup with the actual extracted image
  • 🖱️ Click to Save: Click on image descriptions in the list to extract and save
  • 📑 Smart Navigation:
    • Outline Tab: PDF table of contents with hierarchical navigation
    • Thumbnails Tab: Visual page browser with clickable thumbnails
  • 🔍 Zoom Controls: Zoom in/out with +/- buttons or fit page to window
  • 📊 Image Info Panel: Interactive list showing all images on the current page
  • 💾 Batch Extract: Extract all images from the current page at once
  • 🚀 Pure Python: No external system dependencies required

Installation

From Source

Clone or download this repository, then install:

pip install -e .

From PyPI

pip install pdf-image-extractor

That's it! No system dependencies needed - PyMuPDF includes everything required.

Usage

After installation, run from anywhere using the command:

pdf-image-extractor

Or open a PDF directly from the command line:

pdf-image-extractor /path/to/document.pdf

Or run directly from the source directory:

python -m pdf_image_extractor.app [optional-pdf-file]

Quick Start Guide

  1. Open a PDF: Click "Open PDF" button or provide a file path as argument
  2. Navigate:
    • Use Previous/Next (◀ ▶) buttons or type a page number
    • Click on entries in the Outline tab for TOC navigation
    • Switch to Thumbnails tab for visual page browsing
  3. View Images: Check the right panel for a list of all images on the current page
  4. Preview: Hover your mouse over any image in the list to see a popup preview
  5. Extract Image: Click on an image in the list to save it
  6. Zoom: Use +/- buttons to zoom, or click "Fit" to fit page to window (auto-fits on open)
  7. Batch Extract: Click "Extract All" to save all images from the current page

Development

Install in Development Mode

pip install -e ".[dev]"

License

MIT License - Feel free to use and modify as needed.

Metadata

Release files for extract-pdf-images 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for extract-pdf-images 1.0.1
File Size Uploaded Provenance
extract_pdf_images-1.0.1.tar.gz 11.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for extract-pdf-images 1.0.1
File Interpreter ABI Platform
extract_pdf_images-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 21.3 kB

Release files / extract_pdf_images-1.0.1.tar.gz

Download URL extract_pdf_images-1.0.1.tar.gz
Size 11.4 kB
Tags Source
SHA-256 checksum
How to use checksums
cecad13f2ec722c4fe5807c8c77e3c2192280055d4328d6c9b92b96c70640c0b
BLAKE2b-256 checksum
How to use checksums
864c707d2764e9814fa71019ae59536e5f07d6757dea5f5133bbba3618954789
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / extract_pdf_images-1.0.1-py3-none-any.whl

Download URL extract_pdf_images-1.0.1-py3-none-any.whl
Size 9.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0281fb299eaad77054fa76356cc5c3917a1e9083902b22bcd8aac5c270ef261a
BLAKE2b-256 checksum
How to use checksums
8c6b35530d0a95d1f8c1292d248295f16dd41f142c8af1708613efc59202648c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Security for extract-pdf-images 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page