gribuser (gribuser) wrote,
gribuser
gribuser

Что такое fb2 и почему он устарел

Я уже привык, что рядовые читатели сравнивают форматы fb2 и epub так, что хочется спросить: «ок, с форматами мы разобрались, давайте теперь решим кто сильнее: слон или кит». Простой потребитель контента не может (и не должен) разбираться в технологических тонкостях, он судит по своим конечным ощущениям. На удобном, современном устройстве iPad стоит весьма удачная читалка iBooks и в ней epub смотрится превосходно: значит epub превосходен. Если на kindle человек с комфортом читает mobi, то хорош mobi. О том, что ~99% русскоязычных epub, mobi и всех прочих форматов создаются сегодня из fb2 и, во многом благодаря этому, так хороши, рядовой читатель имеет право не знать. Качество и состав инфраструктуры, обеспечивающей производство контента, от него скрыты. Когда я еду по шоссе, я тоже не очень понимаю, что там под асфальтом – гравий, песочная подушка или нанобетон. Тут главное, чтобы дорога была ровной.
Однако недавно я, с удивлением, обнаружил, что и многие технические специалисты, работающие в ebook-индустрии, так же верят, что булки растут на деревьях думают, что epub создается одним кликом в inDesign или, в крайнем случае, в Calibre, и что есть какая-то особая магия, делающая epub-книги красивыми и удобными всегда и везде. Так же на местах имеется совершенно неуместный, на мой взгляд, энтузиазм в отношении «неограниченных возможностей epub», не сопровождаемый четким пониманием, чем придется расплачиваться за эту «неограниченность».
Подобное недопонимание имеет, помимо субъективных, и объективную причину: недостаток информации на русском по современному состоянию ебукостроения. В итоге часто сведения черпаются из пресс-релизов и промо-страниц различных софтверных продуктов, где информация, скажем мягко, подается не всегда полно и объективно.
Настала пора эту пустоту заполнить – я планирую написать три небольших статьи о том, что мы имеем сейчас в eBook-отрасли и куда нам следует двигаться в будущем. Надеюсь, статьи внесут некоторую ясность. Пока планирую написать следующее:
  1. Что есть fb2 и почему он устарел (см. далее в этом посте)
  2. Что такое epub и почему он не заменит fb2
  3. Как fb3 нас всех спасет (coming soon)

Что лежит в fb2-файле
Начнем с азов - что такое fb2. Это обычный XML файл (т.е. текст с тегами), содержащий всю информацию – текст, форматирование, сноски, и картинки – в жестко структурированном виде. Что же там конкретно хранится?
Прежде всего, fb2-файл содержит детализированную мета-информацию, включающую не только традиционные «название-автор-ISBN», но и структурированную информацию о серии (например, можно описывать вложенные серии), rich-text аннотацию (т.е. аннотация может состоять из нескольких абзацев с форматированием), информацию о версии документа, UUID для сквозной идентификации, информацию об исходном издании (актуально для переводных книг) и другую описательную информацию, которую можно найти в любом бумажном издании или на библиотечной карточке.
Далее в файле есть собственно текст книги, содержащий форматирование. Выразительные возможности fb2 таковы: обычный текст, стихи, цитата, заголовок, подзаголовок. Внутри этих блоков можно использовать жирный, курсив, моноширный, зачеркнутый, ссылка. Подчеркивание, как и окраска, не были внесены в число «штатных» стилей, т.к. на черно-белых устройствах их отображение либо невозможно (в случае цвета), либо вносит путаницу (подчеркивание на ч.б. экране резервируется за ссылками).
Помимо этих, базовых, стилей, гарантированно отображаемых на любом оконечном устройстве, fb2 поддерживает CSS. Существует миф о том, что «fb2 не поддерживает форматирование» вообще и «не поддерживает CSS» в частности. Это заблуждение. Некоторые fb2-читалки (в частности CoolReader) поддерживают CSS в гораздо большей степени, чем основная масса читалок epub. Произвольный CSS-стиль может быть назначен на любой блок или фрагмент текста, формат это предусматривает. Возможность работы с CSS не получила по-настоящему широкого распространения (и в обозримом будущем не получит, о чем мы, взможно, поговорим в следующих статьях), но форматом она предусмотрена.
Помимо текста fb2 может включать графику. Сам по себе формат не предъявляет требований к графике, т.е. fb2 может включать и SVG, и что угодно еще, но читалок и конвертеров для fb2 с поддержкой SVG на сегодя нет, гарантированно поддерживается png и jpeg.

Что такое fb2 концептуально
Самая важная (и самая трудная для понимания, как показывает практика) идея относительно fb2 состоит в том, что это не формат для читалок. Могло сложиться так, что простые читатели с fb2 никогда не столкнулись бы и вообще не знали бы о его существовании, но при этом он все равно бы существовал и хранился в библиотеках, будь то пиратских или легальных. Как не знают читатели этих библиотек о формате хранения на диске данных InnoDB в MySQL, хотя формат используется повсеместно. fb2 – это прежде всего технология, позволяющая создавать другие форматы.
Минималистичные возможности fb2 загоняют редактора в прокрустово ложе базовых тегов. Хорошо ли это? Обычно да. Откройте бумажную книгу, над оформлением которой работали профессионалы. Вы не найдете там ни вольностей с отступами, ни разноцветного текста. Главное же – минимализм гарантирует адекватное отображение книги на любом устройстве и в любом формате, задает четкие требования к читалке и ясные критерии валидации, определяет минимальные требования к заполнению мета-информации. Ведь реально имеющиеся читалки для epub далеко не всегда поддерживают даже тот "минималистичный" набор средств оформления, который дает fb2! Благодаря этому создатель книги просто не может создать файл, который «осыпется» на конечном устростве – средства, которые ему предоставлены, доступны всегда и везде.
Концептуальная проблема, решаемая fb2, такова: до тех пор, пока нет единого формата, одинаково понимаемого всеми читалками (очевидная утопия на сегодня), любой сервис, предоставляющий e-книги читателем, стоит перед выбором – готовить и предлагать книги в формате X тем, кто этот формат понимает либо найти способ предоставлять книги в ЛЮБОМ формате ЛЮБОМУ читателю. Те, кто идут по второму пути, рано или поздно либо создают свой «fb2» либо используют имеющийся. Для решения этой задачи объективно необходим единый универсальный формат, из которого автоматически готовятся все остальные форматы. Вот для этого и был создан fb2.
Поэтому противопоставление fb2 и epub, навернутого, обладающего возможностями и прочая и прочая, лишено смысла. Вы не с можете получить книгу для Amazon Kindle гарантированного качества из первого попавшегося валидного epub, заточенного на iPad. Либо проверяйте и верстайте каждую книгу вручную, либо потребуется fb2 или любая другая его идеологическая замена.
То, что fb2 оказался востребован на конечных устройствах весьма кстати, но технологии типа fb2 существовали, существуют (например, см. DocBook) и будут существовать до тех пор, пока все оконечные устройства не будут выпускаться на одном движке, чего в обозримом будущем не предвидится. Сегодня даже разные epub-читалки настолько по-разному работают с текстом и так перекладывают критичный функционал на индивидуальные «расширения», что даже 100% доминирование epub, случись оно, не избавит нас от нужды в отдельной технологии, обеспечивающей принцип «сделал один раз – читается везде».

Почему fb2 устарел
Сперва о собственно структуре файла fb2. Можно констатировать, что использование XML в качестве контейнера было не самой удачной идеей. Идеология fb2 идентична общепринятой сегодня – контейнер-обертка, содержащий изолированные поименованные элементы с явно указанным MIME-типом, но zip-контейнер с файлом мета-дескрипторов, ставший на сегодня стандартом де-факто, стал бы намного лучшим решением.
Далее о выразительных возможностях. fb2, как и явствует из его названия, ориентирован на художественную литературу и публицистику. Из необходимого для работы с действительно сложными текстами, такими как учебники, справочники и научные публикации, fb2 имеет только мощные средства работы со сносками. Не хватает не только возможности сложной верстки текста иллюстраций, но нет даже нумерованных и булетированных списков, разрядки текста, средств формирования «замечания на полях» и т.п. обыденных в полиграфии вещей. Формат нуждается в серьезном расширении базовых выразительных возможностей и множестве мелких усовершенствований, так же стоит держаться ближе к семантике HTML.
Помимо оформительского «костяка» требуется выработать рекомендации относительно работы с CSS. Опыт и fb2, и epub показывает, что простое включение в стандарт ссылки на последнюю спецификацию W3C не только не решает проблем, но создает новые. Все возможности современного WWW в читалке никто в ближайшие лет пять не реализует, да они там и не нужны, с другой стороны в читалках требуются многие вещи, которые в сети либо второстепенны, либо вовсе отсутствуют. Требуется многоуровневая и гибкая, но однозначная система требований и рекомендаций по использованию средств форматирования. Просто выдача индульгенции на «добавляйте в стандарт всё, читалки отличат своё» не позволит адекватно обслуживать читателей.
Еще потребуется расширить возможности по работе с графикой. Прежде всего это SVG на уровне требования, так же это возможности управлять поведением графических элементов на листе – привязка иллюстраций к тексту и т.п. вещи, необходимые в сложных текстах и не описанные должным образом с учетом разбивки текста на страницы даже в HTML.
Так же весьма полезно шире опираться на открытые стандарты. За прошедшие с момента создания fb2 10+ лет выработано множество решений для частых проблем – от инструментария для работы с ZIP-пакетами до тех самых спецификаций CSS3, SVG, XPointer и т.п.

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

В следующей статье я расскажу о epub, лидере современной зарубежной индустрии электронного книгоиздания. Мы разберем содержимое файла, сильные и слабые стороны формата, сравним его по ключевым параметрам с fb2 и еще немного поговорим о том, почему замена fb2 на epub невозможна.
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

  • 5 comments