PDF для архива
Архивная задача формулируется одной фразой: файл должен открыться, когда исчезнет программа, в которой он создан. Формально для этого существует профиль PDF/A, и мы его не создаём и не проверяем — сказать иначе значит подставить того, кто на нас положится. Зато остальные правила долговременного хранения выполнимы обычными средствами и дают больше, чем принято думать: они убирают внешние зависимости и делают документ самодостаточным.
Коротко о цифрах
- Профиль PDF/A
- не создаётся и не проверяется
- Линеаризация
- словарь должен быть первым объектом в начале файла
- Окно проверки
- первые 2048 байт вместо тысячи с небольшим по спецификации
- Почему шире
- перед подписью формата допускается до килобайта постороннего мусора
- Предел серверной операции
- 50 МБ на файл
Что делает документ хрупким
- Шифрование. Через десять лет пароль будет утерян с вероятностью, близкой к единице, а без него содержимое недоступно навсегда.
- Интерактивные формы. Значения полей зависят от программы просмотра, и часть просмотрщиков покажет пустой бланк уже сегодня.
- Внешние зависимости: шрифты, которых нет в файле, и ссылки на ресурсы за его пределами. Всё, что подгружается снаружи, однажды не подгрузится.
- Сложная структура с повреждённой таблицей ссылок: файл может открываться сейчас за счёт снисходительности просмотрщика и перестать открываться в более строгом.
Что делать при закладке на хранение
- Запечатайте формы: после этого значения становятся частью страниц и не зависят от того, чем документ откроют.
- Снимите шифрование с тех файлов, которые попадают в архив, — пароль здесь не защита, а мина замедленного действия.
- Перестройте структуру документа: линеаризация переписывает файл так, что служебный словарь оказывается первым объектом в начале, и просмотрщик понимает документ, не читая его целиком.
- Проверьте, что документ открывается хотя бы в двух разных программах, а не только в той, где он создан.
- Храните вместе с PDF исходник, из которого он получен: это единственная реальная страховка от того, что формат перестанет устраивать.
Что мы делаем и чего не делаем
Делаем перестройку структуры: документ переписывается в два прохода, служебный словарь линеаризации кладётся первым объектом и умещается в начало файла — по спецификации ему отведена первая тысяча байт с небольшим. Мы проверяем первые два килобайта, потому что перед подписью формата иногда оказывается мусор от почтовых шлюзов и прокси, который сдвигает словарь, не делая файл менее пригодным.
Не делаем профиль PDF/A: ни создания, ни проверки соответствия. Не встраиваем недостающие шрифты — если в документе их нет, взять их неоткуда. Не гарантируем, что файл откроется через десять лет: это зависит от того, что произойдёт с программами, а не от нашей обработки. Всё, что мы можем, — убрать известные причины, по которым файлы перестают открываться.
Частые вопросы
Можно ли получить у вас PDF/A?
Нет. Мы не формируем этот профиль и не проверяем соответствие ему, поэтому обещать архивное качество в этом смысле не станем. Если профиль требуется, его получают в программе, которая умеет его создавать.
Стоит ли ставить пароль на архивные документы?
Скорее нет. Через несколько лет пароль теряется намного чаще, чем документ попадает в чужие руки, а без пароля зашифрованный файл не откроет никто, включая вас.
Что даёт перестройка структуры при хранении?
Служебный словарь оказывается в начале файла, и просмотрщик может понять документ по первым байтам. Заодно переписывается таблица ссылок, что убирает часть скрытых дефектов, унаследованных от программы-создателя.
Как проверить, что архивный файл не испортился?
Открыть его в двух разных программах и сравнить число страниц с описью. Молчаливая порча обычно проявляется именно так: одна программа показывает документ целиком, другая обрывается на середине.