1

У меня есть отсканированный файл PDF, где разные страницы имеют разную ширину страницы из-за того, как PDF был объединен из нескольких источников. Это сбивает с толку зрителей.

Есть ли инструмент командной строки, который может назначить всем страницам одинаковую ширину?

Поскольку сканирование большое и уже сильно сжатое, фактические растровые изображения должны оставаться неизменными, и текст OCR, если таковой имеется, должен быть сохранен в процессе.

Например:

  • До.
    • Размер страницы 15x10 см
    • Размер дисплея 15х10 см
    • Размер пикселя изображения 1500x1000
  • После.
    • Размер страницы 30x20 см
    • Размер дисплея 30х20 см
    • Размер пикселя изображения 1500x1000, неизменный поток двоичных данных.

Было бы предпочтительным решение с использованием imagemagick, поскольку оно легко доступно для сценариев оболочки через Cygwin. Однако я подозреваю, что может быть невозможно предотвратить повторное кодирование изображений в ImageMagick.

1 ответ1

1

Вы можете попробовать Ghostscript :

gs -sOutputFile=output.pdf -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sPAPERSIZE=a4 -dFIXEDMEDIA -dPDFFitPage -f input.pdf

Измените a4 на любой размер, который лучше соответствует вашим потребностям.

См. Выбор формата бумаги в документации.

Вы должны быть в состоянии установить GhostScript (gs) через программу Cygwin setup.exe .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .