Перейти к содержимому
pdftools.kz

Формат DJVU

Сразу честно: DJVU мы не конвертируем — ни один наш маршрут этот формат не принимает. Причина не в лени, а в устройстве: DjVu режет отсканированную страницу на слои. Резкая чёрно-белая маска с буквами кодируется отдельно и в высоком разрешении, а цветной фон и передний план — вейвлетом и в разрешении в несколько раз ниже. Именно поэтому книжный скан в DjVu весит так мало.

Локально в браузеребез регистрации

Коротко о цифрах

Наш ответ
DJVU не конвертируем: маршрута с этим расширением нет
Модель страницы
маска текста, фон и передний план — три слоя
Методы сжатия
JB2 для маски, вейвлет IW44 для цветных слоёв
Свободная реализация
DjVuLibre, включая утилиту ddjvu
Родственник в PDF
JBIG2, который декодируется wasm-модулем

Почему формат вообще появился

DjVu придумали в исследовательской лаборатории Bell Labs в середине девяностых, когда сканы книг весили десятки мегабайт и по модему не передавались вовсе. Идея была в том, чтобы перестать сжимать страницу как одну картинку. Глаз читает буквы по резким границам, а бумажный фон и иллюстрации терпят потерю деталей — значит, и кодировать их надо по-разному.

Маска с буквами сжимается методом JB2, который ищет повторяющиеся формы: буква «а» на странице встречается сотни раз, и вместо сотен картинок в файл кладётся один образец плюс координаты. Фон и передний план уходят под вейвлет IW44 с пониженным разрешением. Разделение слоёв и даёт тот самый выигрыш в размере, за который формат и любят.

Чем DjVu устроен иначе, чем PDF

  • DjVu — контейнер из чанков с растровыми слоями; PDF — язык описания страницы, где текст задан операторами и встроенными шрифтами.
  • В DjVu разрешение слоёв разное внутри одной страницы; в PDF каждое изображение — самостоятельный объект со своим разрешением.
  • Текстовый слой в DjVu возможен, но появляется только после распознавания — сам формат его не создаёт.
  • Ближайший родственник JB2 в мире PDF — сжатие JBIG2, и наш просмотрщик декодирует его отдельным wasm-модулем.
  • Из-за этого в политике безопасности сайта разрешён wasm-unsafe-eval: без него декодеры сканов не компилируются и цвета CMYK искажаются.

Что делать с файлом .djvu

  1. Установите просмотрщик из набора DjVuLibre — это свободная реализация формата, доступная на всех настольных системах.
  2. Экспортируйте страницы в PDF средствами просмотрщика или утилитой ddjvu из того же набора.
  3. Не удивляйтесь росту размера: слоистая модель при экспорте разбирается в обычные растровые страницы.
  4. Принесите полученный PDF к нам — сжатие подберёт качество под нужный вес прямо в браузере.
  5. Если нужны отдельные главы, разделите документ, а для чтения с планшета разложите по несколько страниц на лист.

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

Почему вы не делаете DJVU → PDF?

В нашем стеке нет декодера этого формата: браузеры его не читают, а на сервере стоят qpdf, LibreOffice и конвертер документов, ни один из которых с DjVu не работает. Честный отказ полезнее кнопки, возвращающей ошибку.

Почему PDF из DjVu получается тяжелее оригинала?

Потому что при экспорте слои склеиваются: вместо резкой маски и грубого фона получается одна растровая картинка на страницу. Выигрыш, ради которого формат и создавался, при этом теряется.

Можно ли искать по тексту в DjVu?

Только если внутри уже лежит слой распознанного текста — формат его допускает, но не создаёт сам. У скана без распознавания искать нечего, там одни изображения слоёв.

Чем открыть файл .djvu?

Просмотрщиками из набора DjVuLibre на настольных системах и специализированными читалками на телефоне. Универсальные программы для PDF этот формат не открывают, потому что общего у них только назначение.

Рядом