Как я могу извлечь изображения из PDF-файла? [закрыто]
Мне нужно извлечь все изображения из PDF-файла на моем сервере. Мне не нужны страницы PDF, только изображения в их первоначальном размере и разрешении.
Как я мог бы сделать это с помощью Perl, PHP или любого другого приложения на базе UNIX (которое я бы вызвал с помощью функции exec из PHP)?
3 answers
Pdfimages делает именно это. Это часть пакетов poppler-utils и xpdf-utils.
Со страницы руководства:
Pdfimages сохраняет изображения из файла формата переносимого документа (PDF) в виде переносимого растрового изображения (PPM), переносимого растрового изображения (PBM) или файлов JPEG.
Pdfimages считывает PDF-файл, сканирует одну или несколько страниц PDF-файла и записывает один файл PPM, PBM или JPEG для каждого изображения, корень изображения -nnn.xxx, где nnn - номер изображения, а xxx - тип изображения (.ppm, .pbm, .jpg).
ПРИМЕЧАНИЕ: pdfimages извлекает необработанные данные изображения из файла PDF без выполнения каких-либо дополнительных преобразований. Любое вращение, обрезка, инверсия цвета и т.д., выполняемые потоком содержимого PDF, игнорируются.
Что касается Perl, вы проверили CPAN?
- PDF::Getimages - получение изображений из pdf-документа
- PDF::РАСПОЗНАВАНИЕ - получение распознавания и изображений из файла pdf
- PDF::OCR2 - извлечь весь текст и все изображения из pdf
Pdfimages хорош тем, что он не перекодирует, а только извлекает файлы jpeg. Но есть ошибка:
Pdfimages поставляется из пакета "poppler-utils" или из более крупного "xpdf-utils". По крайней мере, в Ubuntu "poppler-utils" поставляется уже предустановленным. Изображения pdf в poppler-utils 10.0.3 (Ubuntu 9.04 Веселый) по-прежнему не реагируют на опцию "-j" для извлечения ".jpg". Он всегда извлекает ".ppm".
В качестве обходного пути вы можете заменить "poppler-utils" на "xpdf-utils".: $sudo apt- получить установку xpdf-утилиты
С наилучшими пожеланиями,
+++ Оливер