Как сохранить гиперссылки в PDF
Кликабельность держится не на тексте, а на отдельном объекте: прозрачном прямоугольнике поверх страницы, внутри которого записан адрес. Синий подчёркнутый текст под ним — просто оформление. Поэтому судьба ссылки решается тем, что делает с этим прямоугольником каждый следующий инструмент: конвертация его создаёт, склейка переносит вместе со страницей, сведение намеренно обходит стороной, а сжатие с перерисовкой убирает вместе со всем остальным.
Коротко о цифрах
- Что такое ссылка в PDF
- аннотация: область страницы плюс действие
- Связь с текстом
- её нет: подчёркнутый текст — только оформление
- Объединение страниц
- переносит аннотации, но переходы наружу выборки ломает
- Сведение форм
- ссылки пропускаются намеренно и остаются рабочими
- Сжатие с перерисовкой
- убирает ссылки полностью вместе со слоем текста
- Оптимизация структуры
- ссылки не трогает
Как ссылка устроена внутри файла
В PDF ссылка — это аннотация: область на странице плюс действие, которое надо выполнить при нажатии. Действий бывает два вида: открыть внешний адрес или перейти к месту внутри документа. Текст под областью к ней не привязан, его можно стереть, и прямоугольник останется висеть на пустом месте.
Отсюда следует практический вывод. Если в исходном документе адрес просто напечатан буквами и гиперссылкой не оформлен, в PDF никакой аннотации не появится. Некоторые программы просмотра сами подсвечивают похожий на адрес текст, но это их услуга, а не свойство файла: в другой программе или на печати ничего не произойдёт.
Что делает со ссылками каждый инструмент
- Конвертация из офисного формата: LibreOffice переносит и внешние адреса, и внутренние переходы, если они были оформлены как ссылки, а не набраны текстом.
- Объединение, извлечение и удаление страниц: аннотации едут вместе со своей страницей, но переход, который вёл на страницу, оставшуюся снаружи выборки, ведёт в никуда.
- Сведение форм: ссылки пропускаются намеренно. У них нет собственного изображения, которое можно было бы впечатать, а удаление отняло бы у читателя навигацию — поэтому они остаются рабочими.
- Номера страниц и водяной знак: рисуют поверх содержимого и аннотаций не касаются вовсе.
- Сжатие: страница перерисовывается в изображение, и от ссылок не остаётся ничего — ни областей, ни адресов.
- Оптимизация структуры: переписывает файл целиком, не трогая ни текст, ни аннотации, поэтому ссылки переживают её без потерь.
Проверка за три действия
- Наведите курсор на ссылку: над рабочей областью он меняется, над обычным текстом — нет.
- Нажмите на неё и посмотрите, куда ведёт: адрес мог перенестись с опечаткой или без протокола.
- Проверьте внутренние переходы — в оглавлении и перекрёстных ссылках они ломаются чаще внешних.
- Если файл собирали из частей, отдельно пройдите по ссылкам, которые вели между этими частями.
Как не потерять ссылки по дороге
- В исходнике оформляйте адреса именно гиперссылками, а не набирайте текстом — иначе переносить будет нечего.
- Если файл надо и уменьшить, и сохранить кликабельным, начинайте с оптимизации структуры, а не со сжатия страниц.
- Собирайте документ до того, как расставите перекрёстные ссылки: после склейки внутренние переходы между бывшими файлами не восстанавливаются.
- Проверяйте результат в двух разных программах: одна может подсвечивать адреса сама и создавать ложное впечатление, что всё работает.
Частые вопросы
Почему адрес в PDF виден, но не нажимается?
Потому что в исходном документе он был набран обычным текстом, без оформления гиперссылкой. Переносить в PDF оказалось нечего: область для нажатия создаётся только из настоящей ссылки, а не из похожего на адрес текста.
Куда делись ссылки после сжатия файла?
Сжатие перерисовывает каждую страницу в изображение, а изображение не содержит ни областей нажатия, ни адресов. Если ссылки нужны, уменьшайте файл оптимизацией структуры — она аннотации не затрагивает.
После объединения перестали работать переходы по оглавлению. Почему?
Внутренние переходы ведут к конкретному месту документа. При склейке собирается новый файл, и адресат перехода в нём уже другой либо отсутствует вовсе, если нужная страница не попала в выборку.
Сведение форм убьёт ссылки?
Нет. Ссылочные аннотации оно намеренно пропускает: рисовать у них нечего, а удаление лишило бы документ навигации без всякой пользы. Впечатываются только те объекты, у которых есть собственное изображение.