Как сравнить два pdf файла через командную строку

Кто-нибудь знает, как сравнить два файла PDF, используя Adobe Acrobat через командную строку. Я хочу сделать это через командную строку, потому что мы хотим сравнивать сотни файлов каждый день с помощью некоторых автоматизированных задач Windows.

Любая помощь будет очень полезна. Я не хочу ограничивать себя акробатом для сравнения, если есть что-то еще доступное.

3 ответа

Решение

Как насчет i-net PDFC - он выполняет полное сравнение контента - текст, изображения, строки, обнаружение верхнего / нижнего колонтитула и так далее. Вы можете использовать его либо в командной строке, либо с графическим интерфейсом (2.0, в настоящее время в публичной бета-фазе).

Утилита командной строки уже имеет возможность сравнивать папки с PDF-файлами друг с другом (или в крайнем случае: используйте API;))

Отказ от ответственности: Да, я работаю в компании, которая сделала это - поэтому отзывы очень ценятся.

Проверьте Сравнить PDF:

comparepdf - это инструмент командной строки для сравнения двух файлов PDF. По умолчанию он сравнивает их тексты, но также может сравнивать их визуально (например, для обнаружения изменений в диаграммах, изображениях, шрифтах и ​​макете). Это должно оказаться полезным для автоматизированного тестирования.

Это с открытым исходным кодом (GPL) и доступны двоичные файлы Windows.

Также:

Если вы хотите приложение с графическим интерфейсом, которое показывает подробные различия между PDF-файлами, используйте DiffPDF.

То, что вы хотите, просто невозможно сделать с помощью Adobe Acrobat через командную строку. Однако вы можете сделать это с помощью некоторых утилит командной строки, которые вы можете объединить в оболочку или пакетный скрипт.

1. Быстрая визуальная проверка различий изображения страницы

Одним из компонентов этого будет ImageMagick's convert команда, которую вы можете протестировать следующим образом для двух одностраничных PDF-файлов, содержимое страниц которых схоже друг с другом:

convert -label '%f' -density '100' first.pdf second.pdf -scale '100%' miff:- \
 | montage - -geometry +0+0 -tile 1x1 -background white miff:- \
 | animate -delay '50' -dispose background -loop 0 -

Это откроет окно, которое переключается с задержкой 50 dezi-секунд между отображением каждого из двух файлов, так что легко обнаружить визуальные различия.

2. Скрипт для вывода PDF-файла, визуализирующий различия между PDF-файлами

Я делаю то же самое, используя сценарий оболочки в Linux, который оборачивает

  1. ImageMagick-х compare команда
  2. pdftk полезность
  3. Ghostscript (опционально)

(Было бы довольно легко перенести это на .bat Пакетный файл для DOS/Windows.)

Вы можете прочитать подробности об этом подходе в этом ответе.

Другие вопросы по тегам