Непонятно, что вы подразумеваете под «потерей качества». Это может означать много разных вещей. Не могли бы вы опубликовать несколько образцов для иллюстрации? Возможно, вырежьте тот же раздел из версий низкого качества и хорошего качества (как PNG, чтобы избежать дальнейшей потери качества).
Возможно, вам нужно использовать -density
для преобразования с более высоким dpi:
convert -density 300 file.pdf page_%04d.jpg
(Вы можете добавить -units PixelsPerInch
или, -units PixelsPerCentimeter
если необходимо, по умолчанию моя копия ppi.)
Обновление: Как вы указали, gscan2pdf
(способ, которым вы его используете) является просто оберткой для pdfimages
(из poppler ). pdfimages
не делает то же самое, что convert
и при вводе PDF-файла.
convert
берет PDF, отображает его с некоторым разрешением и использует полученное растровое изображение в качестве исходного изображения.
pdfimages
просматривает PDF-файл для встроенных растровых изображений и экспортирует каждое из них в файл. Он просто игнорирует любые текстовые или векторные команды рисования в PDF.
В результате, если то, что у вас есть, это PDF, который является просто оберткой вокруг ряда растровых изображений, pdfimages
будет гораздо лучше извлекать их, потому что он получает необработанные данные в их исходном размере. Возможно, вы также захотите использовать эту -j
опцию pdfimages
, потому что PDF может содержать необработанные данные JPEG. По умолчанию pdfimages
все конвертируется в формат PNM, а конвертирование JPEG> PPM> JPEG - процесс с потерями.
Так что попробуйте
pdfimages -j file.pdf page
Вы можете или не может понадобиться , чтобы следовать , что с convert
на .jpg
стадии ( в зависимости от того, какое изображение форматировать PDF использовал).
Я попробовал эту команду в PDF, который я сделал сам из последовательности изображений JPEG. Извлеченные файлы JPEG были побайтно идентичны исходным изображениям. Вы не можете получить более высокое качество, чем это.