Сравнение двух PDF

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

Нажмите или перетащите исходный PDF

Нажмите или перетащите изменённый PDF

Загрузите оба PDF, чтобы увидеть сравнение.

Как это работает

Каждый PDF читается с помощью pdf.js — того же движка, который Firefox использует для рендеринга PDF, — и проходит по потоку содержимого каждой страницы, собирая встроенный текст через getTextContent(). Затем два получившихся текста разбиваются на строки и сравниваются тем же алгоритмом наибольшей общей подпоследовательности, что лежит в основе инструмента norito Сравнение текста, который находит наименьший набор добавленных и удалённых строк, объясняющий разницу между двумя документами, вместо наивного построчного сравнения по позиции (при котором любая строка после одного вставленного абзаца была бы помечена как изменённая).

Как и при любом извлечении текста из PDF, результат зависит от того, действительно ли PDF содержит текст. Сканированные страницы — это изображения и ничего не дают для сравнения. Всё, извлечение и сравнение, выполняется в этой вкладке браузера — ни один файл не загружается.

Частые вопросы

Сравнивается макет/дизайн или только текст?

Только текстовое содержимое. Инструмент извлекает встроенный текст из каждого PDF и сравнивает его, поэтому он замечает изменения формулировок, добавленные и удалённые абзацы, изменённые числа, но не чисто визуальные изменения — например, замену шрифта или перемещение изображения при неизменном окружающем тексте.

Работает ли это со сканированными PDF?

Нет, сканированные страницы — это изображения без встроенного текста, поэтому извлекать и сравнивать нечего, если только PDF уже не прошёл через OCR.

Загружаются ли мои PDF куда-либо?

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