Как сравнить два 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, который оборачивает
- ImageMagick-х
compare
команда pdftk
полезность- Ghostscript (опционально)
(Было бы довольно легко перенести это на .bat
Пакетный файл для DOS/Windows.)
Вы можете прочитать подробности об этом подходе в этом ответе.