В начале 70-х годов американский писатель Майкл Харт (Michael Hart) сумел получить неограниченный доступ к компьютеру Xerox Sigma 5, установленному в университете штата Иллинойс. Чтобы достойно использовать ресурсы машины, он решил создать первую электронную книгу, перепечатав Декларацию независимости США.
Сегодня цифровая литература получила широкое распространение, во многом благодаря развитию портативных устройств (смартфонов, ридеров, ноутбуков). Это привело к появлению большого количества форматов электронных книг. Попробуем разобраться в их особенностях и расскажем историю наиболее популярных из них — начнем с формата DjVu.
/ Flickr / Lane Pearman / CC
DjVu был разработан в 1996 году компанией AT&T Labs с одной целью — дать веб-разработчикам инструмент для распространения изображений в высоком разрешении через интернет.
Дело в том, что в то время 90% всей информации все еще хранилось на бумаге, а многие из важных документов имели цветные изображения и фотографии. Чтобы сохранить читаемость текста и качество картинок, приходилось делать сканы в высоком разрешении.
Классические веб-форматы — JPEG, GIF и PNG — позволяли работать с такими изображениями, но ценой объема. В случае JPEG, чтобы текст был читаем на экране монитора, приходилось сканировать документ с разрешением 300 dpi. Цветная страница журнала при этом занимала порядка 500 Кбайт. Скачивание файлов такого объема из интернета в то время было довольно трудоемким процессом.
Альтернативой было оцифровывание бумажных документов с помощью технологий распознавания текста, однако 20 лет назад их точность была далека от идеальной — после обработки финальный результат приходилось серьезно править вручную. При этом графики и изображения оставались «за бортом». И даже если удавалось встроить отсканированную картинку в текстовый документ, терялись некоторые визуальные детали, например, цвет бумаги, её текстура, а это важные компоненты исторических документов.
С целью решить эти проблемы AT&T и разработали DjVu. Он позволил сжимать отсканированные цветные документы с разрешением 300 dpi до 40–60 Кбайт, при размере оригинала в 25 Мбайт. Размеры чёрно-белых страниц DjVu уменьшил до 10–30 Кбайт.
DjVu может работать как с бумажными отсканированными документами, так и с другими цифровыми форматами, например PDF. В основе работы DjVu лежит технология, разбивающая изображение на три компонента: передний план, задний план и чёрно-белую (битовую) маску.
Маска сохраняется с разрешением исходного файла и содержит изображение текста и прочие чёткие детали — тонкие линии и схемы — а также контрастные картинки.
Она имеет разрешение 300 dpi, чтобы тонкие линии и контуры букв оставались четкими, и сжимается с помощью алгоритма JB2, который представляет собой вариацию алгоритма JBIG2, предложенного AT&T для работы факсов. Особенностью JB2 является то, что он ищет на странице повторяющиеся символы и сохраняет их изображение только один раз. Таким образом, в многостраничных документах каждые несколько последовательных страниц пользуются общим «словарём».
Задний план содержит текстуру страницы и иллюстрации, а его разрешение меньше, чем у маски. Фон без потерь для восприятия сохраняется с разрешением 100 dpi.
Передний план хранит цветовую информацию о маске, и его разрешение обычно понижается ещё сильнее, так как в большинстве случаев цвет текста черный и одинаковый для одного печатного знака. Для сжатия переднего и заднего планов используется вейвлетное сжатие.
Заключительным этапом создания DjVu-документа становится энтропийное кодирование, когда адаптивный арифметический кодировщик превращает последовательности одинаковых символов в бинарное значение.
Задачей DjVu было сохранить «свойства» бумажного документа в цифровом виде, позволив работать с такими документами даже слабым компьютерам. Поэтому ПО для просмотра DjVu-файлов обладает возможностью «быстрого рендеринга». Благодаря ей в память загружается только тот кусочек DjVu-страницы, который должен отображаться на экране.
Это также дает возможность просматривать «недокачанные» файлы, то есть отдельные страницы многостраничного DjVu-документа. При этом используется прогрессивная прорисовка деталей изображения, когда компоненты как бы «проявляются» по мере закачки файла (как в JPEG).
20 лет назад, когда был представлен этот формат, загрузка страницы происходила в три этапа: сперва грузилась текстовая составляющая, через пару секунд подгружались первые версии изображений и фон. Уже после «проявлялась» вся страница книги.
Наличие трёхуровневой структуры также позволяет осуществлять поиск по отсканированным книгам (так как есть специальный текстовый слой). Это оказалось удобно при работе с технической литературой и справочниками, поэтому DjVu стал основой для нескольких библиотек научных книг. Например, в 2002 году он был выбран Архивом Интернета в качестве одного из форматов (вместе с TIFF и PDF) для проекта по сохранению отсканированных книг из открытых источников.
Однако, как и все технологии, DjVu имеет свои минусы. Например, при кодировании сканов книг в формат DjVu некоторые символы в документе могут подменяться на другие, внешне похожие. Наиболее часто это происходит с буквами «и» и «н», отчего эта проблема получила название «проблема инь». Она не зависит от языка текста и влияет, в том числе, на цифры и другие мелкие повторяющиеся знаки.
Её причина — ошибки классификации символов в кодировщике JB2. Он «дробит» сканы на группы по 10–20 штук и формирует для каждой из групп словарь общих символов. Словарь содержит образцы общих букв и цифр со страницами и координатами их появления. Когда вы просматриваете DjVu-книгу, символы из словаря подставляются в нужные места.
Это позволяет уменьшить размеры DjVu-файла, однако, если отображения двух букв визуально похожи, кодировщик может их или перепутать, или принять за одинаковые. Иногда это приводит к порче формул в техническом документе. Для решения этой проблемы можно отказаться от алгоритмов сжатия, однако это увеличит размеры цифровой копии книги.
Другим недостатком формата является то, что он не поддерживается по умолчанию во многих современных ОС (в том числе мобильных). Поэтому для работы с ним нужно ставить сторонние программы, такие как DjVuReader, WinDjView, Evince и др. Однако здесь хотелось бы отметить, что некоторые электронные читалки (например, ONYX BOOX) поддерживает формат DjVu «из коробки» — так как необходимые приложения там уже установлены.
Кстати, о том, что еще могут приложения для ридеров на базе Android, мы рассказывали в одном из предыдущих материалов.
Ридер ONYX BOOX Chronos
Еще одна проблема формата проявляется при работе с DjVu-документами на небольших экранах мобильных устройств — смартфонах, планшетах, ридерах. Иногда DjVu-файлы представлены в виде скана разворота книги, а профессиональная литература и рабочие документы часто имеют формат А4, поэтому приходится «двигать» изображение в поисках информации.
Однако отметим, что эта проблема также решаема. Проще всего, конечно, поискать документ в другом формате — но если такой вариант невозможен (например, вам нужно работать с большим количеством технической литературы в DjVu), то можно воспользоваться электронными читалками с большой диагональю от 9,7 до 13,3 дюйма, которые специально «заточены» под работу с подобными документами.
Например, в линейке ONYX BOOX такими устройствами являются Chronos и MAX 2 (кстати, мы подготовили обзор этой модели ридера, и в скором времени опубликуем его в нашем блоге), а также Note, который имеет экран E Ink Mobius Carta с диагональю 10,3 дюйма и повышенным разрешением. Такие устройства позволяют спокойно рассмотреть все детали иллюстраций в оригинальном размере и подойдут тем, кому часто приходится читать учебную или техническую литературу. Для просмотра файлов DjVu и PDF используется NEO Reader, который дает настраивать контраст и толщину оцифрованных шрифтов.
Несмотря на имеющиеся у формата недостатки, на сегодняшний день DjVu остается одним из самых популярных форматов для «сохранения» литературных произведений. Во многом это обусловлено тем, что он является открытым, а обойти его некоторые технологические ограничения сегодня позволяют современные технологии и разработки.
В следующих материалах мы продолжим рассказ об истории появления форматов электронных книг и особенностях их работы.
P.S. Несколько оборов ридеров ONYX BOOX:
Сегодня цифровая литература получила широкое распространение, во многом благодаря развитию портативных устройств (смартфонов, ридеров, ноутбуков). Это привело к появлению большого количества форматов электронных книг. Попробуем разобраться в их особенностях и расскажем историю наиболее популярных из них — начнем с формата DjVu.
/ Flickr / Lane Pearman / CC
Возникновение формата
DjVu был разработан в 1996 году компанией AT&T Labs с одной целью — дать веб-разработчикам инструмент для распространения изображений в высоком разрешении через интернет.
Дело в том, что в то время 90% всей информации все еще хранилось на бумаге, а многие из важных документов имели цветные изображения и фотографии. Чтобы сохранить читаемость текста и качество картинок, приходилось делать сканы в высоком разрешении.
Классические веб-форматы — JPEG, GIF и PNG — позволяли работать с такими изображениями, но ценой объема. В случае JPEG, чтобы текст был читаем на экране монитора, приходилось сканировать документ с разрешением 300 dpi. Цветная страница журнала при этом занимала порядка 500 Кбайт. Скачивание файлов такого объема из интернета в то время было довольно трудоемким процессом.
Альтернативой было оцифровывание бумажных документов с помощью технологий распознавания текста, однако 20 лет назад их точность была далека от идеальной — после обработки финальный результат приходилось серьезно править вручную. При этом графики и изображения оставались «за бортом». И даже если удавалось встроить отсканированную картинку в текстовый документ, терялись некоторые визуальные детали, например, цвет бумаги, её текстура, а это важные компоненты исторических документов.
С целью решить эти проблемы AT&T и разработали DjVu. Он позволил сжимать отсканированные цветные документы с разрешением 300 dpi до 40–60 Кбайт, при размере оригинала в 25 Мбайт. Размеры чёрно-белых страниц DjVu уменьшил до 10–30 Кбайт.
Как DjVu сжимает документы
DjVu может работать как с бумажными отсканированными документами, так и с другими цифровыми форматами, например PDF. В основе работы DjVu лежит технология, разбивающая изображение на три компонента: передний план, задний план и чёрно-белую (битовую) маску.
Маска сохраняется с разрешением исходного файла и содержит изображение текста и прочие чёткие детали — тонкие линии и схемы — а также контрастные картинки.
Она имеет разрешение 300 dpi, чтобы тонкие линии и контуры букв оставались четкими, и сжимается с помощью алгоритма JB2, который представляет собой вариацию алгоритма JBIG2, предложенного AT&T для работы факсов. Особенностью JB2 является то, что он ищет на странице повторяющиеся символы и сохраняет их изображение только один раз. Таким образом, в многостраничных документах каждые несколько последовательных страниц пользуются общим «словарём».
Задний план содержит текстуру страницы и иллюстрации, а его разрешение меньше, чем у маски. Фон без потерь для восприятия сохраняется с разрешением 100 dpi.
Передний план хранит цветовую информацию о маске, и его разрешение обычно понижается ещё сильнее, так как в большинстве случаев цвет текста черный и одинаковый для одного печатного знака. Для сжатия переднего и заднего планов используется вейвлетное сжатие.
Заключительным этапом создания DjVu-документа становится энтропийное кодирование, когда адаптивный арифметический кодировщик превращает последовательности одинаковых символов в бинарное значение.
Достоинства формата
Задачей DjVu было сохранить «свойства» бумажного документа в цифровом виде, позволив работать с такими документами даже слабым компьютерам. Поэтому ПО для просмотра DjVu-файлов обладает возможностью «быстрого рендеринга». Благодаря ей в память загружается только тот кусочек DjVu-страницы, который должен отображаться на экране.
Это также дает возможность просматривать «недокачанные» файлы, то есть отдельные страницы многостраничного DjVu-документа. При этом используется прогрессивная прорисовка деталей изображения, когда компоненты как бы «проявляются» по мере закачки файла (как в JPEG).
20 лет назад, когда был представлен этот формат, загрузка страницы происходила в три этапа: сперва грузилась текстовая составляющая, через пару секунд подгружались первые версии изображений и фон. Уже после «проявлялась» вся страница книги.
Наличие трёхуровневой структуры также позволяет осуществлять поиск по отсканированным книгам (так как есть специальный текстовый слой). Это оказалось удобно при работе с технической литературой и справочниками, поэтому DjVu стал основой для нескольких библиотек научных книг. Например, в 2002 году он был выбран Архивом Интернета в качестве одного из форматов (вместе с TIFF и PDF) для проекта по сохранению отсканированных книг из открытых источников.
Недостатки формата
Однако, как и все технологии, DjVu имеет свои минусы. Например, при кодировании сканов книг в формат DjVu некоторые символы в документе могут подменяться на другие, внешне похожие. Наиболее часто это происходит с буквами «и» и «н», отчего эта проблема получила название «проблема инь». Она не зависит от языка текста и влияет, в том числе, на цифры и другие мелкие повторяющиеся знаки.
Её причина — ошибки классификации символов в кодировщике JB2. Он «дробит» сканы на группы по 10–20 штук и формирует для каждой из групп словарь общих символов. Словарь содержит образцы общих букв и цифр со страницами и координатами их появления. Когда вы просматриваете DjVu-книгу, символы из словаря подставляются в нужные места.
Это позволяет уменьшить размеры DjVu-файла, однако, если отображения двух букв визуально похожи, кодировщик может их или перепутать, или принять за одинаковые. Иногда это приводит к порче формул в техническом документе. Для решения этой проблемы можно отказаться от алгоритмов сжатия, однако это увеличит размеры цифровой копии книги.
Другим недостатком формата является то, что он не поддерживается по умолчанию во многих современных ОС (в том числе мобильных). Поэтому для работы с ним нужно ставить сторонние программы, такие как DjVuReader, WinDjView, Evince и др. Однако здесь хотелось бы отметить, что некоторые электронные читалки (например, ONYX BOOX) поддерживает формат DjVu «из коробки» — так как необходимые приложения там уже установлены.
Кстати, о том, что еще могут приложения для ридеров на базе Android, мы рассказывали в одном из предыдущих материалов.
Ридер ONYX BOOX Chronos
Еще одна проблема формата проявляется при работе с DjVu-документами на небольших экранах мобильных устройств — смартфонах, планшетах, ридерах. Иногда DjVu-файлы представлены в виде скана разворота книги, а профессиональная литература и рабочие документы часто имеют формат А4, поэтому приходится «двигать» изображение в поисках информации.
Однако отметим, что эта проблема также решаема. Проще всего, конечно, поискать документ в другом формате — но если такой вариант невозможен (например, вам нужно работать с большим количеством технической литературы в DjVu), то можно воспользоваться электронными читалками с большой диагональю от 9,7 до 13,3 дюйма, которые специально «заточены» под работу с подобными документами.
Например, в линейке ONYX BOOX такими устройствами являются Chronos и MAX 2 (кстати, мы подготовили обзор этой модели ридера, и в скором времени опубликуем его в нашем блоге), а также Note, который имеет экран E Ink Mobius Carta с диагональю 10,3 дюйма и повышенным разрешением. Такие устройства позволяют спокойно рассмотреть все детали иллюстраций в оригинальном размере и подойдут тем, кому часто приходится читать учебную или техническую литературу. Для просмотра файлов DjVu и PDF используется NEO Reader, который дает настраивать контраст и толщину оцифрованных шрифтов.
Несмотря на имеющиеся у формата недостатки, на сегодняшний день DjVu остается одним из самых популярных форматов для «сохранения» литературных произведений. Во многом это обусловлено тем, что он является открытым, а обойти его некоторые технологические ограничения сегодня позволяют современные технологии и разработки.
В следующих материалах мы продолжим рассказ об истории появления форматов электронных книг и особенностях их работы.
P.S. Несколько оборов ридеров ONYX BOOX: