Для гиков

EPUB изнутри

На самом деле EPUB — это ZIP-файл, сжатый особым образом. В этом легко убедиться: измените расширение любого файла .epub на .zip и разархивируйте его любым архиватором. Внутри этого архива вы обнаружите файлы содержимого книги (в формате XHTML), дополнительные файлы иллюстраций, шрифтов и т. д., и обязательные вспомогательные файлы, которые стандарт EPUB требует для описания книги.

Минимальный набор файлов, который входит в EPUB (речь о EPUB 2, пока самом распространённом, который с большей или меньшей гарантией будет прочитан любой программой или устройством, поддерживающим EPUB) , должен быть следующим:

  • файл mimetype, единственный из файлов EPUB, который остаётся несжатым в составе архива, с одной единственной строчкой
    application/epub+zip
  • папка META-INF с файлом container.xml, который указывает, где хранится содержимое книги,
  • папка OEBPS, в которой должны быть:
    • файл с метаданными книги, списком всех файлов, которые нужны для ее содержимого, описанием последовательности чтения файлов и путеводителем по ключевым файлам (обычно он называется content.opf ),
    • файл toc.ncx, содержащий оглавление книги в том виде, в котором оно будет прочитано программой для чтения,
    • файл stylesheet.css с описанием стилей оформления текста,
    • собственно файлы содержимого,
    • папка с иллюстрациями и, возможно, папка со шрифтами.

EPUB для продвинутых пользователей

Программисту и гику разобраться в том, что такое EPUB, будет совсем несложно. Достаточно ознакомиться со спецификацией формата на сайте International Digital Publishing Forum. Советуем, однако, прочитать краткие руководства, написанные известным специалистом по EPUB Лайзой Дейли о формате EPUB 2 Build a digital book with EPUB» и EPUB 3 «Create rich-layout publications in EPUB 3 with HTML5, CSS3, and MathML». Руководства предназначены в первую очередь для тех, кто знает, что такое XHTML и CSS и как ими пользоваться. Они будут полезны и тем, кто не хочет разбираться в тонкостях XML, но может столкнуться, к примеру, с проблемами при конвертации файлов верстки в EPUB. Если же информации вам недостаточно, то рекомендуем вам книги Джарета Бьюза «EPUB From the Ground Up: A Hands-On Guide to EPUB 2 and EPUB 3», Лизы Кастро «EPUB: Straight to the Point», «From InDesign CS 5.5 to EPUB and Kindle», Пэрайи Бёрка «Epublishing with InDesign», а также книгу Мэтта Гарриша и Маркуса Гиллинга «EPUB 3 Best Practices».

Теперь, если вы смогли дочитать это руководство до конца, то вы и в самом деле можете открыть текстовый редактор, создать все эти файлы, например, в директории MY-EBOOK. Имейте в виду, что размер каждого текстового файла в EPUB 2 не должен превышать 260 Кб. (Этого ограничения уже нет в EPUB 3, однако свои ограничения накладывают платформы для дистрибуции.) Вся книга может быть практически любого размера, но состоять она должна из отдельных частей.

Теперь осталось упаковать файлы таким образом, чтобы файл mimetype оказался архиве первым и несжатым, а все остальные файлы сохранили структуру папки. Для этого надо перейти в папку с файлами для EPUB и выполните две команды:

$ zip -0Xq my-book.epub mimetype
$ zip -Xr9Dq my-book.epub

(То же самое можно сделать с помощью утилиты ePub Zip/Unzip или eCanCrusher.) На выходе у вас получится файл электронной книги my-book.epub. Не забудьте проверить его — с помощью утилиты epubcheck, EPUB-checker или воспользовавшись онлайновым валидатором IDPF. Кроме того, вы можете воспользоваться онлановым сервисом FlightDeck, чтобы узнать, как можно улучшить вашу книгу (с технической точки зрения, естественно).

Готово!

Для тех, кто всё это смог сделать, рекомендуем, чтобы не мучиться с обычными текстовыми редакторами, использовать для производства EPUB-файлов специализированными редакторами — Sigil, BlueGriffon EPUB Edition или oXygen XML Author.

Самый простой из них — редактор Sigil, позволяющий с нуля сделать EPUB 2 или отредактировать его, при этом изменения файлов контента (добавление или удаление текстовых файлов, файлов шрифтов и т. д.) программа автоматически внесёт в content.opf и toc.ncx. Но все эти редакторы не идеальны. Sigil не слишком устойчив в работе, не всегда корректно отображает шрифты и т. д. BlueGriffon EPUB Edition, разработанный на основе HTML-редактора BlueGriffon, несмотря на многие удобные функции (вёрстка формул, расширенный редактор CSS, создание файлов в формате EPUB 3 и др.), не позволяет проверять и редактировать служебные файлы EPUB. Редактор oXygen XML Author — вариант программы oXygen XML Editor, мощного XML-редактора, предназначенного для работы со структурированными данными индустриальных масштабов. Это и его минус — для вёрстки электронных книг его функции избыточны, а в настройках легко разберется только профессионал в XML.

Для дизайнеров книг более привычным, скорее всего, окажется создание EPUB не в специализированном редакторе, а в привычной и знакомой программе вёрстки InDesign. Подробнее об этом читайте дальше.

Leave a Reply

Your email address will not be published. Required fields are marked *