Извлекайте изображения из PDF-файлов с помощью poppler
Когда вам нужно извлечь изображение из файла PDF
Иногда действительно возникает необходимость сохранить изображения из PDF без использования скриншотов или отображения PDF на экране. pdfimages поможет в этом. Эта статья является частью нашего Руководства по инструментам документации 2026: Markdown, LaTeX, PDF и рабочие процессы печати хаба.

Чтобы извлечь изображения из файла PDF в Linux, наиболее распространённым и эффективным инструментом является утилита командной строки pdfimages, которая является частью пакета poppler-utils.
Использование утилиты pdfimages в Linux: Пошаговые инструкции
1. Установите pdfimages (если он ещё не установлен):
Большинство дистрибутивов Linux включают pdfimages по умолчанию. Если его нет, установите его с помощью менеджера пакетов:
sudo apt-get install poppler-utils
или для Fedora:
sudo dnf install poppler-utils
2. Откройте терминал:
Нажмите Ctrl + Alt + T, чтобы открыть окно терминала.
3. Запустите pdfimages для извлечения изображений:
Базовый синтаксис:
pdfimages
Пример:
pdfimages /path/to/file.pdf /path/to/output/image
- Это извлечёт все изображения из
file.pdfи сохранит их какimage-000.ppm,image-001.ppmи т.д. в указанной директории вывода.
4. Извлечение изображений в формате JPEG (если это необходимо):
Чтобы извлечь изображения в формате JPEG (если это возможно), используйте опцию -j:
pdfimages -j /path/to/file.pdf /path/to/output/image
- Это сохранит изображения в формате
.jpg.
5. Извлечение изображений с определённых страниц:
- Чтобы извлечь изображения с диапазона страниц, используйте
-f(первая страница) и-l(последняя страница):
pdfimages -f 2 -l 5 -j /path/to/file.pdf /path/to/output/image
- Это извлечёт изображения со страниц 2 до 5.
6. Дополнительные опции:
- Чтобы извлечь изображения в формате PNG: используйте
-png(если это поддерживается вашей версией). - Для защищённых паролем PDF используйте
-opw 'ownerpassword'или-upw 'userpassword'.
Примечания
- Формат по умолчанию — PPM (цвет) или PBM (чёрно-белый). Используйте
-jдля JPEG, или преобразуйте файлы PPM/PBM в другие форматы с помощью инструментов, таких какconvertиз ImageMagick, если это необходимо. - Файлы вывода автоматически нумеруются и сохраняются в указанной директории.
Таблица краткого обзора
| Пример команды | Описание |
|---|---|
pdfimages input.pdf image |
Извлекает все изображения в формате PPM/PBM по умолчанию |
pdfimages -j input.pdf image |
Извлекает изображения в формате JPEG, когда это возможно |
pdfimages -f 3 -l 5 input.pdf image |
Извлекает изображения со страниц 3 до 5 |
pdfimages -opw 'password' -j input.pdf image |
Извлекает изображения из PDF, защищённого паролем владельца |
Этот метод эффективен и работает для большинства PDF, содержащих встроенные изображения. Но:
pdfimagesизвлекает изображения только в их оригинальном разрешении.- Чтобы контролировать разрешение вывода, используйте библиотеку для рендеринга PDF, например, PyMuPDF и укажите желаемое DPI при создании изображения.
Как сохранить изображения из PDF с определённым разрешением.
Вы не можете указать разрешение извлечённых изображений при использовании pdfimages, потому что этот инструмент извлекает встроенные изображения в их оригинальном формате и разрешении без пересэмплирования или изменения качества. Разрешение определяется тем, как изображения были сохранены в PDF, и pdfimages не предоставляет опции для масштабирования вверх или вниз во время извлечения.
Если вы хотите извлечь изображения с определённым разрешением (например, отобразить страницу или часть страницы как изображение с заданным DPI), вам нужно использовать библиотеку или инструмент для рендеринга PDF, например, PyMuPDF (fitz). С помощью PyMuPDF вы можете указать желаемое разрешение с помощью параметра dpi при рендеринге страницы в изображение:
import fitz # PyMuPDF
doc = fitz.open("input.pdf")
page = doc.load_page(0) # первая страница
pix = page.get_pixmap(dpi=300) # рендеринг с разрешением 300 DPI
pix.save("output.png")
Этот подход создаёт растровое изображение страницы с указанным DPI, а не извлекает оригинальные встроенные изображения.
Другие инструменты для извлечения изображений из PDF
Лучшее программное обеспечение для извлечения изображений из PDF без потери разрешения — это те, которые извлекают оригинальные встроенные изображения напрямую, а не рендерят или пересэмплируют их. Лучшие варианты включают:
-
Adobe Acrobat Pro: Предоставляет специальную функцию “Экспортировать все изображения”, которая извлекает изображения в их оригинальном качестве и формате как отдельные файлы. Этот метод очень надёжен и сохраняет точное разрешение и качество изображений, как они хранятся в PDF.
-
pdfimages (из XPDF/Poppler suite): Бесплатный, открытый исходный код, утилита командной строки, доступная для Linux и других платформ.
pdfimagesизвлекает все изображения из PDF в их оригинальном формате и разрешении, включая поддержку JPEG, JPEG2000 и других форматов. Он широко рекомендуется для пользователей, ищущих безвозмездный, высококачественный процесс извлечения. -
Онлайн-инструменты (например, PDF24 Tools, PDFCandy, pdfforge): Эти сервисы позволяют загрузить PDF и загрузить извлечённые изображения, сохраняя оригинальное разрешение. Они удобны для быстрых задач и не требуют установки, но могут вызывать проблемы с приватностью для чувствительных документов.
Таблица краткого обзора
| Программное обеспечение/Инструмент | Платформа | Сохраняет оригинальное разрешение | Примечания |
|---|---|---|---|
| Adobe Acrobat Pro | Windows/Mac | Да | Платное, профессиональное, очень надёжное |
| pdfimages (Poppler) | Linux/Windows | Да | Бесплатное, открытый исходный код, утилита командной строки |
| PDF24 Tools, PDFCandy | Веб-базированный | Да | Бесплатное, удобное в использовании, вопросы приватности |
Ключевая точка:
Всегда используйте инструменты, которые извлекают (а не рендерят или делают скриншоты) изображения. И Adobe Acrobat Pro, и pdfimages являются отраслевыми стандартами для этой цели, обеспечивая сохранение изображений точно такими, как они есть в PDF, без потери разрешения.
Опции командной строки pdfutils
При выполнении pdfimages /help он выведет что-то подобное:
$ pdfimages /help
pdfimages version 24.02.0
Copyright 2005-2024 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011, 2022 Glyph & Cog, LLC
Usage: pdfimages [options] <PDF-file> <image-root>
-f <int> : первая страница для конвертации
-l <int> : последняя страница для конвертации
-png : изменить формат вывода по умолчанию на PNG
-tiff : изменить формат вывода по умолчанию на TIFF
-j : записывать JPEG изображения как файлы JPEG
-jp2 : записывать JPEG2000 изображения как файлы JP2
-jbig2 : записывать JBIG2 изображения как файлы JBIG2
-ccitt : записывать CCITT изображения как файлы CCITT
-all : эквивалентно -png -tiff -j -jp2 -jbig2 -ccitt
-list : вывести список изображений вместо сохранения
-opw <string> : пароль владельца (для зашифрованных файлов)
-upw <string> : пользовательский пароль (для зашифрованных файлов)
-p : включить номера страниц в имена выходных файлов
-q : не выводить никакие сообщения или ошибки
-v : вывести информацию об авторских правах и версии
-h : вывести информацию о использовании
-help : вывести информацию о использовании
--help : вывести информацию о использовании
-? : вывести информацию о использовании
Полезные ссылки
- Руководства по инструментам документации 2026: Markdown, LaTeX, PDF и рабочие процессы печати
- Инструменты для работы с PDF в Ubuntu - Poppler
- Справочник по Bash
- Изменение размера изображений с помощью Imagemagik
- https://en.wikipedia.org/wiki/Poppler_(software)
- Переустановка Linux
- Как запустить окна терминала в тайловом режиме в Linux Mint и Ubuntu