Восстановить PDF
Восстановление повреждённых PDF по принципу наилучших усилий: битые таблицы xref, оборванные загрузки, испорченные заголовки. Выполняется целиком в вашем браузере.
Выберите повреждённый PDF
или перетащите его сюда — восстановление выполняется локально в вашем браузере
—
Восстановление по принципу наилучших усилий. Не каждый PDF можно починить — если разрушено само содержимое страницы, восстановление может выдать файл, который открывается, но пуст.
Отчёт о восстановлении
- Метод восстановления—
- Страниц до—
- Страниц после—
- Размер до—
- Размер после—
Your file is ready
Processed entirely in your browser — the file never left your device.
Как восстановить PDF
Три шага. Файл никогда не покидает ваш браузер.
Откройте повреждённый файл
Выберите или перетащите PDF, который не открывается. Он читается только в памяти вашего браузера.
Запустите восстановление
Мы пробуем стандартный загрузчик, затем толерантный загрузчик и, наконец, перестраиваем таблицу xref из сырых байтов.
Скачайте восстановленную копию
Вы получаете новый PDF и диагностический отчёт, который показывает, какой путь восстановления сработал.
Как работает «Восстановить PDF»
PDF-файл структурно состоит из трёх частей: заголовка (%PDF-1.x),
последовательности косвенных объектов (страницы, шрифты, потоки содержимого) и
таблицы xref в конце, которая сообщает: «объект N находится по
смещению в байтах X». Когда PDF не открывается, почти всегда произошло одно из
двух: испортилась xref (оборванная загрузка, частичное сохранение, смещения,
указывающие не туда) или повреждён один из косвенных объектов (плохое сжатие,
отсутствующая длина, битый поток).
Мы пробуем восстановление в три этапа. Этап 1 — строгая загрузка через pdf-lib:
это решает простой случай, когда файл на самом деле в порядке. Этап 2 —
толерантная загрузка: мы просим pdf-lib (и форк @cantoo/pdf-lib, у которого
чуть более снисходительный парсер xref) игнорировать отдельные битые объекты
и продолжать. Этап 3 — последнее средство: мы проходим по сырым байтам в
поисках каждого блока N G obj … endobj, строим совершенно новую
таблицу xref, указывающую на найденные, и снова пробуем толерантный загрузчик
на этом синтезированном файле.
Что этот инструмент может исправить
- Оборванные загрузки, в которых xref и трейлер потерялись в конце.
- Неверные смещения xref — частое явление при частичных сохранениях или неудачных инкрементных обновлениях.
- Мусор в начале файла (мы заново находим заголовок
%PDF-). - Объекты не по порядку после того, как сторонний инструмент записал файл некорректно.
Что этот инструмент исправить не может
- Зашифрованные файлы с неизвестным паролем. Восстановление чинит структуру, а не доступ. Используйте «Разблокировать PDF».
- Повреждённые потоки содержимого. Если повреждены сами инструкции рисования страницы, восстановление может выдать файл, который открывается, но отображается пустым.
- Файлы без восстановимых объектов. Если всё, что есть после заголовка, — это мусор, восстанавливать нечего.
Приватность и безопасность
Повреждённые PDF обычно появляются, когда что-то пошло не так с важным файлом: финальный договор, который не открывается, налоговый документ, который Acrobat отказывается загружать, скачанная выписка, которая загадочно испорчена. Большинство онлайн-сервисов восстановления загружают ваш файл на свой сервер. Поскольку этот инструмент выполняется целиком в браузере, шага загрузки нет, поэтому даже файлы с конфиденциальным содержимым можно восстановить, не покидая вашего устройства.
Часто задаваемые вопросы
PDF — это набор косвенных объектов (страницы, шрифты, потоки) плюс таблица «xref», которая их индексирует. Когда PDF повреждается, обычно повреждена одна из этих двух частей — объекты в порядке, но индекс битый, или наоборот. Сначала мы пробуем стандартные загрузчики PDF. Если они не справляются, мы проходим по сырым байтам, находим маркер каждого объекта и заново строим свежую таблицу xref, которая на них указывает. Затем результат повторно сериализуется с максимально переносимыми настройками PDF (без потоков объектов), чтобы он открывался в любой программе чтения.
Нет. Повреждённый PDF полностью разбирается внутри вашего браузера с помощью pdf-lib и нашей процедуры восстановления на уровне байтов. Серверного шага нет, поэтому даже файлы с конфиденциальным содержимым можно безопасно восстановить.
Восстановление выполняется по принципу наилучших усилий. Если сами потоки содержимого страниц искажены, файл может загрузиться, но отображаться пустым — это потеря данных, которую инструмент не может выдумать обратно. Если в файле вообще нет восстановимых косвенных объектов (всё перезаписано или обрезано после первого объекта), мы выдаём понятную ошибку, а не подсовываем фальшивый результат.
Не обязательно. Восстановленный файл обычно близок по размеру к оригиналу. Если в оригинале использовались потоки объектов (функция сжатия), восстановленная копия может оказаться немного больше, потому что мы пересобираем её без них ради максимальной совместимости.
Только структурное повреждение, но не пароль. Если у вас повреждённый PDF с защитой паролем, сначала восстановите его, а затем воспользуйтесь нашим инструментом «Разблокировать PDF» с правильным паролем.