8 лет назад 8 апреля 2011 в 0:09 251

Электронную книгу можно создать несколькими способами. Например, можно просто набрать ее в текстовом редакторе или же воспользоваться более специфическим ПО. Но основной путь – как и прежде, оцифровка уже существующих «бумажных» изданий. Данный процесс, как правило, включает в себя сканирование изданий и последующую обработку полученных изображений страниц. Здесь возникает ряд специфических сложностей. Поскольку «бумажное» издание может отличаться достаточно сложной версткой, появляется проблема ее сохранения. Кроме того, электронная версия должна быть удобна в работе и иметь приемлемые размеры.

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

Если же отсканированные страницы содержат в основном текст, то такая форма сохранения электронных книг становится явно избыточной. В этом случае их зачастую обрабатывают с помощью OCR-программ для получения обычного компактного текстового файла. Однако данный способ требует большой редакторской работы: если ошибка в тексте художественного произведения в худшем случае может стать разве что мишенью для шуток, то в математической формуле подобный «глюк» способен полностью исказить смысл оцифрованной публикации.

Формат DjVu как раз призван помочь в обработке отсканированных материалов. Первые версии его были предложены в конце 1990-х. К нашему времени данный формат благополучно приобрел достаточную популярность в электронных библиотеках. Разработчики «дежавю» попытались найти свой баланс между качеством картинки, удобством создания и использования и размерами готовых электронных книг. У этого формата немало специфических особенностей и преимуществ. Мы попытаемся разобраться со сферой его применения, а также познакомимся со свободно распространяемыми инструментами для создания, редактирования и просмотра электронных книг, представленных в «дежавю».

Как же устроен DjVu и за счет чего он успешно конкурирует с другими форматами? Начнем с того, что это графический формат. Все книги в DjVu состоят из изображений страниц, дополненных вспомогательной информацией. Файлы этого формата отличаются весьма небольшими размерами, достигается же это за счет мощного сжатия отсканированных страниц. Секрет такого фокуса достаточно прост. Дело в том, что DjVu разделяет страницу на отдельные слои, для которых применяются собственные алгоритмы и степени сжатия. Отдельно выделяются фон страницы, изображения и текст, которые сжимаются разными алгоритмами и с разной степенью качества.

В результате при минимизации размера файла сохраняется точное соответствие верстки электронной копии оригиналу, а также достигается приемлемое качество картинки, причем текст и однотонные рисунки сохраняют максимальную четкость. В определенной степени DjVu можно сравнить с музыкальным форматом MP3, только применительно к отсканированным документам, – размер файла здесь также уменьшается в разы за счет отсечения лишней, не воспринимаемой информации. Надо заметить, что особенности формата DjVu сказываются и при просмотре документов в браузере. Дело в том, что слои файла подгружаются постепенно. Это означает, что пользователь в первую очередь увидит текстовый слой, а затем уже будут подгружены другие. Такой подход благоприятно сказывается на субъективном восприятии скорости открытия документов в онлайне.

Просматриваем DjVu
Для просмотра DjVu в настоящее время можно найти немало хороших и удобных решений. Многие универсальные читалки, например STDUViewer, умеют открывать DjVu-файлы. Есть и узкоспециализированные решения. Наиболее известными и, пожалуй, удачными являются программы WinDjView, DjVu Reader и DjVu Fancy Viewer. Официальным, если так можно сказать, ридером для данного формата является софтина DjView, версии которой доступны для различных платформ. Эта программа входит в универсальный пакет DjVuLibre, предлагаемый на сайте djvu.org в качестве базового решения для работы с «дежавю». Надо сказать, что эта штатная читалка вполне недурно справляется со своими обязанностями. Файлы открываются быстро, ошибок на страницах практически не бывает.

Предлагаются различные варианты масштабирования страниц, их просмотр по одной и разворотами, есть и стандартные инструменты перехода между страницами по их номерам. Для быстрой навигации по документу служит боковая панель, в которой могут выводиться графические миниатюры страниц, перечень разделов или система поиска по слою распознанного текста. Интересная функция DjView – возможность просмотра отдельных слоев файла. Так, например, можно оставить для «ознакомления» только текстовый слой, отключив изображения и фон страницы. Иногда это повышает удобство чтения с экрана некоторых документов с чересчур замысловатой версткой. Нужный фрагмент изображения можно выделить, скопировать и экспортировать как отдельный графический файл.

Подсистема печати документов в DjView весьма проста. Можно выбирать только параметры цветности изображения, его масштабирования, а также включать печать рамок. Печать нескольких страниц на одном листе не поддерживается. Дополнительные настройки программы также весьма лаконичны, однако при желании можно определить параметры гаммы выводимого изображения и переопределить разрешение монитора при просмотре DjVu-файлов. Если вы просто хотите читать такие файлы и не предъявляете дополнительных требований к возможностям проги, эта стандартная читалка вполне подойдет на роль приложения для повседневной работы, благо доступна она, как говориться, «из коробки». Не будем забывать и о многоплатформенности данной софтины. Мы же перейдем к ее конкурентам.

Найдется применение и читалке DjVu Reader (djvu-info.ru/djvu_reader). Дело в том, что эта небольшая программа не требует инсталляции и может быть использована как портативное приложение для работы с флэшки. Устроена софтина максимально просто, однако она способна открывать документы в отдельных вкладках, переключать отображение слоев файла, настраивать контраст изображения. А вот печатать она совершенно не умеет. Кроме того, можно посетовать на отсутствие русского языка в интерфейсе. Пожалуй, наиболее популярной альтернативой DjView на платформе Windows в настоящее время является программа WinDjView (windjvu.sourceforge.net). Заметим, что разработчики этой софтины также предлагают и версию для Mac OS, которая называется MacDjView. Обе проги распространяются бесплатно.

Работает программа очень быстро и открывает файлы без ошибок. В отличие от DjView, данная софтина располагает открываемые документы в пределах одного окна на вкладках, что удобно для одновременной работы с несколькими файлами. Просматривать страницы книги можно поодиночке, а также в виде единой ленты. Доступны быстрое изменение масштаба просмотра, а также поворот страниц – для этого на панель инструментов вынесено несколько специальных кнопок. Полезен также режим «Выделить и увеличить», позволяющий быстро рассмотреть в увеличении нужный фрагмент открытой страницы. Поддерживается просмотр определенных слоев DjVu-файла.

WinDjView позволяет делать для файлов собственные закладки, которые можно снабдить текстовыми пояснениями. Это удобно, если создатель файла не предусмотрел для своей книги оглавления, что случается довольно часто. В настройках приложения можно сделать резервную копию своих закладок и аннотаций в виде файла *.reg. Система печати этой проги выполнена гораздо удобней, чем в стандартном DjView. Здесь есть все необходимые настройки: масштабирование, возможность печати нескольких страниц на листе с выбором точных параметров их расположения на листе, автоматическая ориентация страниц при печати, а также обрезка их краев. Для просмотра документов DjVu в браузере предлагается официальный бесплатный плагин, разработанный фирмой LizardTech для операционных систем Windows и Mac OS. Скачать его можно на сайте djvu.org. Есть и альтернативные предложения, предназначенные для различных версий Linux, а также Symbian.

Создаем DjVu
Выбор инструментов создания «дежавю»-файлов сейчас достаточно широк. Если ориентироваться на использование только свободно распространяемых приложений, то лучшим источником таких программ станет каталог DjVuSoft (www.djvu-soft.narod.ru). Там можно найти ссылки на все необходимые софтины, большинство из которых поставляются с открытым исходным кодом, ряд статей по использованию формата DjVu, а также форум.

Итак, будем исходить из того, что страницы нужной книги вы уже отсканировали, сохранили их в одном из привычных графических форматов (TIFF, JPEG или другом), и теперь вам осталось только собрать их в единый DjVu-файл. Начнем обзор с программы DjVu Small. Это приложение размером всего в полтора мегабайта содержит консольные утилиты для кодирования графических файлов в формат DjVu, декодирования DjVu-файла в другие графические форматы, а также удобный интерфейс для управления этими утилитами в комплекте с подборкой вспомогательных инструментов, облегчающих процесс обработки сканов. Бонус программы – ее портативность: она не требует инсталляции и не сохраняет на компьютере никаких дополнительных настроек. Данный пакет очень прост в использовании и располагает подробной справкой на русском языке.

Скорее всего, основным режимом работы с DjVu Small у вас будет пакетное кодирование в единый файл группы отсканированных страниц. Для выполнения данной операции понадобится только указать путь к файлам сканов и выбрать один из предлагаемых профилей кодирования – все остальное программа сделает самостоятельно. При желании можно поработать с настройками кодеров, однако необходимость в этом возникает редко. Поэтому отметим только, что для корректного расположения страниц в будущем DjVu-файле лучше заранее дать всем файлам сканов имена в стиле «0001, 0002, 0003…», что избавит вас от потенциальных ошибок.

Здесь необходимо сделать важное примечание: DjVu Small не умеет самостоятельно разделять графические файлы на слои, и по умолчанию весь контент книги будет кодироваться с одинаковыми настройками сжатия. Это нормально, если ваша книга содержит только текст. В случае иллюстрированного издания задача усложняется. Для того чтобы воспользоваться всеми преимуществами «дежавю», понадобится предварительно разделить текст и иллюстрации в обрабатываемой книге. Для решения такой задачи необходимо использование нескольких других программ. В общем случае процесс выглядит так: сначала в исходных сканах вырезаются все иллюстрации, после чего оставшийся текст конвертируется в DjVu, а затем на место пропущенных иллюстраций «подклеивается» слой с отдельно обработанными картинками. Для такой технологии можно использовать связку из свободно распространяемых программ Scan Tailor, Scan Tailor Pic и DjVu Imager.

Scan Tailor предназначен для обработки сканов. Он умеет разворачивать изображения, обрезать поля и отделять друг от друга страницы, отсканированные одним разворотом, а также очищать изображения от мелких помех. Однако нас будет интересовать другая функция данной проги – ее способность автоматически определять и отделять друг от друга зоны текста и иллюстраций на отсканированных страницах. Заметим, что процесс выделения зон идет немного медленно, поэтому приготовьтесь к тому, что обработка большой и богато иллюстрированной книги не произойдет «молниеносно». При необходимости можно поправить результат работы программы, самостоятельно очертив зоны иллюстраций. Справедливости ради заметим, что в случае не слишком вычурной верстки вмешиваться в работу Scan Tailor приходится достаточно редко. Проблемы возникали со страницами, имеющими собственную ориентацию (например, если в издании большее количество страниц было представлено в книжной ориентации, а некоторые, с иллюстрациями и таблицами, – в альбомной).

Важное замечание: для корректного прохождения следующих этапов создания книги для всех страниц на последней стадии обработки («Вывод») в Scan Tailor должны быть заданы определенные параметры: включены режимы «Смешанный» и «Цветной – серый». Обработанные изображения Scan Tailor сохраняет в папке с именем Out, создаваемой в каталоге с исходными сканами.
Следующий шаг в изготовлении иллюстрированной книги – применение программы Scan Tailor Pic. Это приложение предназначено для совместной работы с уже использованной нами софтиной Scan Tailor.

Разобраться с интерфейсом данной программы проблемы не составит: необходимо просто указать путь к папке с обработанными Scan Tailor графическими файлами. После запуска процесса обработки Scan Tailor Pic генерирует на основе каждого скана два отдельных графических файла – для текста и для иллюстраций. В результате работы программы в общем каталоге «скантейлоровского» вывода Out создается папка Pics, которая содержит вырезанные иллюстрации на белом фоне. Теперь можно собрать на основе отделенных изображений с текстом DjVu-файл, использовав при этом максимальную степень сжатия. Сделать это можно с помощью уже знакомой нам программы DjVu Small.

Файлы с иллюстрациями можно редактировать отдельно от изображений текстового слоя, со своими собственными настройками качества. Результат обращения к Scan Tailor Pic зависит от корректности обработки сканов в Scan Tailor: для всех файлов будущей книжки должны быть обязательно заданы области изображений, поскольку, не найдя сгенерированных в ходе этой операции масок, Scan Tailor Pic просто завершит свою работу сообщением об ошибке. Альтернативой связке Scan Tailor + Scan Tailor Pic может служить программа Scan Kromsator.

Назначение у нее аналогичное – обработка сканов и разделение их на пары отдельных изображений для текста и иллюстраций. В отличие от Scan Tailor, данная программа не умеет автоматически определять на страницах зоны иллюстраций – это приходится делать вручную. С другой стороны, итогом работы будут уже готовые пары изображений, и обращаться к дополнительным софтинам не понадобится. В случае книг с небольшим количеством иллюстраций данная прога может стать привлекательным решением. Для объединения в единый файл «текстовой» заготовки и отдельных иллюстраций – неважно, получены они с помощью Scan Tailor или Scan Kromsator, – предназначена третья программа, DjVu Imager.

В ее настройках понадобится указать путь к файлам с иллюстрациями, а также задать в поле «Источник» адрес уже закодированного нами ранее DjVu-файла с текстовым слоем. В «ДЗФ» («Делитель разрешения заднего фона») и «Качество задн. фона» можно указать для слоя с иллюстрациями свои собственные параметры сжатия, отличающиеся от параметров текстового слоя. После запуска кодирования программа создаст новый файл электронной книги, в котором на пустые места в текстовом слое будут подставлены иллюстрации с повышенным качеством. Это станет последней операцией в нашем процессе – мы получим книгу с разным, нужным нам качеством слоев.

Для изготовления качественной иллюстрированной электронной книги, в полной мере задействующей все многочисленные возможности формата DjVu, придется порядком повозиться.

Доработать книгу в формате DjVu можно внедрением в нее слоя распознанного текста. С его помощью, в частности, можно будет реализовать такую полезную возможность, как полнотекстовый поиск по изданию. Кроме того, распознанный слой может служить основой для генерации оглавления к книге, с помощью которого можно будет быстро ориентироваться в объемном документе.
Для создания дополнительного текстового слоя сначала понадобится распознать отсканированные страницы с помощью любого доступного OCR-пакета. Далее в дело вступает программа DjvuOCR; она оптимизирована для работы с пакетом FineReader. Использовать ее крайне просто: достаточно указать пути к проекту FineReader и соответствующему DjVu-файлу – все остальное произойдет уже без участия пользователя. Генерацию оглавления можно поручить программе DjVu Hyperlinks Editor. Она использует распознанный текстовый слой указанного DjVu-файла для создания содержания книги или же алфавитного указателя к ней. Поддерживается как автоматический, так и ручной режим работы.

Итоги
Формат DjVu весьма интересен и давно завоевал себе популярность у создателей электронных библиотек. В то же время для его эффективного использования нужно четко представлять сферу его применения. Это в первую очередь оцифровка книг, не содержащих полутоновых иллюстраций. «Дежавю» действительно позволяет добиться очень высокой степени сжатия подобных документов при сохранении хорошего качества изображения. Кодирование в таких условиях выполняется буквально парой кликов мышью в программе DjVu Small. В то же время для изготовления качественной иллюстрированной электронной книги, в полной мере задействующей возможности формата DjVu, придется порядком повозиться. В ходе этого процесса нужно последовательно использовать несколько отдельных приложений, постоянно отслеживая их настройки. Все это превращается в нетривиальную работу, способную отпугнуть многих юзеров. Конечно, после нескольких экспериментов картина проясняется, и работа упрощается, однако осадок все равно остается: единый пакет для генерации таких сложных DjVu-файлов был бы гораздо привлекательней. UP

Никто не прокомментировал материал. Есть мысли?

Добрый день, Алексей !
Спасибо за статью, но вы ничего не написали про чтение DjVu-файлов на Андроид-устройствах. Сейчас электронные читалки с Андроид-системой стали обычным явлением.
Может быть, у вас появится отдельная статья ?
Спасибо за внимание.

Здравствуйте!

Мне хотелось бы знать, можно ли редактировать уже созданную книгу в DjVu формате? Большинство книг в интернете представлены в DjVu формате, однако создатели книг очень редко делают книгу с оглавлением (что очень удобно!). Как это можно сделать уже с готовой книгой?
Или добавить страницу. Создаётся книга, при этом сканируются те страницы на котором имеется информация, а те 2-3 страницы после очередной главы пропадают. В итоге где-то после 200 страницы вам приходится тратить время на поиск требуемой страницы.

Спасибо за статью. Я – автор сайта djvu-soft.narod.ru

Небольшие замечания:

1. Читалка DjVu Reader – древний динозавр, давно умерший, отсталый и никакого интереса не представляющий. Лидирует, безусловно, WinDjView.

2. “DjVu Small не умеет самостоятельно разделять графические файлы на слои” – это не совсем так. В программе есть профили кодирования с автоматической сегментацией – просто ею сейчас мало кто пользуется, в основном применяют ручную сегментацию – при помощи DjVu Imager.

3. Scan Tailor Pic – неправильное название. Откуда Вы такое взяли? Программа та называется “ST Split”.

4. “Однако осадок все равно остается: единый пакет для генерации таких сложных DjVu-файлов был бы гораздо привлекательней”.

Тут Вы правильно подметили – все мы тоже так считаем. Определённые шаги в направлении “единого пакета” делаются. Так, я собрал клон Scan Tailor – Scan Tailor Featured – со встроенным функционалом ST Split. Программа DjvuOCR больше не нужна – т.к. нашими усилиями последние версии ABBYY FineReader имеют полную поддержку формата DjVu. Другие шаги в этом направлении, скорее всего, тоже будут.