Рендеринг PDF

При просмотре PDF в браузере или мобильном приложении используется рендеринг PDF на стороне сервера и отображение отрендеренных страниц в браузере и мобильных устройствах. Сам процесс рендеринга осуществляют внешние подключаемые программы (библиотеки).

Библиотеки PDF-рендеринга[править]

Библиотеки рендеринга не идеальны и могут возникать проблемы совместимости библиотек с определенными файлами PDF. В таком случае можно попытаться изменить библиотеку рендеринга на другую. Поменять библиотеку можно как для всех книг сразу (заменив программу рендеринга по-умолчанию), так и для каждой книги в отдельности.

Программы рендерят PDF-страницу в виде рисунка с разрешением 300 DPI (точек на дюйм), что соответствует печатному качеству. При показе отрендеренных страниц в виде картинок в браузере использовать картинки с высоким разрешением нежелательно из-за высокого объема трафика и высокой вычислительной нагрузки на мобильные устройства.

Ресайзинг страниц под экран пользователя[править]

Решается данная проблема путем ресайзинга (изменения размеров) отрендеренных страниц до размеров программы просмотра книги (браузера или приложения ELiS). Ресайзинг тоже занимает ощутимое количество ресурсов сервера и осуществляется с помощью программ ImageMagick или GraphicsMagick. Выбор любой из программ остается на усмотрение администратора (программа включается глобально на весь сайт). При этом следует иметь в виду следующее:

  1. GraphicsMagick работает быстрее в 1,5 - 2 раза.
  2. Текстовые (не сканированных) PDF ImageMagick сжимает лучше в 1-3 раза.

Таким образом, если у вас основной контент составляют оцифрованные издания, следует использовать GraphicsMagick. Если в основном используются текстовые PDF, то надо решить что для вас важнее - большая скорость при перелистывании страницы (GraphicsMagick) или уменьшение размера страницы (ImageMagick).

Оптимизации отображения PDF[править]

Размер отрендеренных PDF-страниц имеет большое значение на скорость доставки страницы в устройство пользователя и ее отображение. Размер существенно зависит от типа PDF-файла (текстовый или оцифрованный) и от выходного формата. Формат JPEG хорошо подходит для оцифрованных PDF, но имеет существенно больший размер для текстовых PDF в сравнении с PNG. ELiS автоматически выбирает подходящий формат (PNG для текстовых PDF и JPEG для оцифрованных) для уменьшения трафика при просмотре страниц. Кроме этого, браузеры с поддержкой WebP могут быть автоматически переключены на получение страниц в WebP, что снижает размер страниц еще на 20-25%.

После получения отресайзенной страницы велика вероятность загрузки следующих страниц в аналогичном разрешении. ELiS автоматически запустить упреждающий ресайзинг, что позволяет подготовить страницы нужных размеров до запроса со стороны браузера.

Приведенные оптимизации не требуют какой-либо настройки со стороны администратора или библиотекаря.