FictionBook

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
FictionBook
Расширение .fb2 или .fb3
MIME-тип text/xml[2]
Разработчик Дмитрий Грибов
Опубликован 2004
Последний выпуск 2.6.6[1] (6 апреля 2008)
Тип формата электронная книга
Расширен из XML
Открытый формат? да
Сайт fictionbook.org

FictionBook (также FeedBook) — формат представления электронных версий книг в виде XML-документов, призванный обеспечить совместимость с любыми устройствами и форматами и облегчать их программную обработку. Имеет расширение .fb2. Разработан группой разработчиков во главе с Дмитрием Грибовым и Михаилом Мацневым.

История[править | править код]

В середине 1990-х годов энтузиасты начали оцифровывать советские книги. Форматы были самые разные. Текстовый файл можно читать любой программой, однако он не особо удобен в чтении (текст обычно форматируется моноширинным шрифтом). Библиотека Максима Мошкова использовала форматированный TXT, что отлично работает в текстовом режиме, но совершенно неудобно в оконных интерфейсах и на мобильных устройствах, а также затрудняет обработку. Microsoft Word и TeX крайне сложны в обработке. PDF приспособлен только для бумажных копий, чтение PDF с экрана затруднено. DocBook рассчитан на технические книги: вся мощь формата избыточна для художественных книг, а стихи не поддерживаются. Немногочисленные карманные устройства, появившиеся в начале 2000-х, имели свои книжные форматы и зачастую некачественное ПО для их чтения. Врéменным решением было использовать подмножество HTML, так как полный HTML крайне сложен в реализации.[3] По такому пути пошёл, например, Open eBook (ныне декларирующий полное соответствие HTML/CSS ePub)[4].

В условиях такого «вакуума» Грибов и предложил свой формат, задумывавшийся не как формат для чтения электронных книг, а как формат для их хранения[5], с возможностью сконвертировать в стандартный файл (HTML, RTF) или во внутренний формат электронной книги. Однако наглядность и простота изменения книги «даже руками» придало FB2 популярность в Рунете. В последние годы возросла популярность формата в нерусскоязычных странах: Болгарии[6], Латвии[7][8]. Некоторые электронные библиотеки перешли на формат FictionBook полностью, и не принимают книги, подготовленные в других форматах. Однако на страницах этих библиотек можно скачать одну и ту же книгу в виде файлов других распространённых форматов (текстовый файл, RTF, HTML, rb, .doc, PRC[en], ePub, PDF), полученных из .fb2 путём автоматической конвертации.

FictionBook 3[править | править код]

FictionBook 3 должен быть ZIP-контейнером, в котором хранятся XML и дополнительные файлы (метаданные, рисунки). Жанры предлагается классифицировать по шести разным «осям» (государственная принадлежность автора, возраст аудитории, описанная историческая эпоха, литературная форма, сюжет и стиль повествования). Разработка fb3 была приостановлена автором в 2008 году, однако продолжена в 2013[9], в декабре 2013 движок был выложен на GitHub[10].

По состоянию на 18 сентября 2022 года, формат FB3 находится в beta-стадии. Последнее изменение официального редактора состоялось 3 декабря 2019 года[11], официальной читалки — 5 июня 2020 года[12].

Описание[править | править код]

Каждая электронная книга в формате FictionBook представлена в виде одного файла формата XML. Иллюстрации (PNG и JPEG) встраиваются прямо в XML, будучи представленными в кодировке Base64. FictionBook часто сжимают в ZIP (получается файл .fb2.zip или .fbz), многие программы чтения поддерживают и FB2 со сжатием.

FictionBook похож идеологией на первые версии HTML: все теги относятся к логическому форматированию, а не к визуальному. Нет привязки ни к какому аппаратному обеспечению и ни к какому формату бумаги, нигде в FB2 не указана какая бы то ни была единица измерения — пиксель, пункт или кегль. Как будет выглядеть текст, полученный из формата .fb2, зависит либо от настроек программы-просмотрщика этого формата, либо от параметров, заданных при конвертации файла в другой формат. К примеру, тег заголовка в программе просмотра можно вывести крупным шрифтом, другим цветом или как-то иначе. А при конвертации в формат HTML каждому заголовку может быть сопоставлен определённый HTML-тег, например, <H4> или <B>. Поэтому FB2 претендует на роль универсального формата хранения книг, который можно автоматически переводить в HTML, PDF и другие форматы.[13]

Многие из возможностей FB2 специфичны для электронных книг. В метаданных хранится название книги, ISBN, информация об авторе и жанре книги. Поддерживаются сноски, оглавление, стихи, цитаты. Для переводных книг предусмотрена информация об исходной книге.

Проработанные метаданные дают широкое поле для автоматической обработки книг. К примеру, в электронную библиотеку поступила книга в формате .fb2. Эта книга может быть автоматически помещена в раздел автора книги, а название книги и аннотация могут автоматически отобразиться в колонке новостей библиотеки. Таким образом, намного упрощается процесс помещения в библиотеку новых книг. У документа и авторов есть идентификаторы свободной формы: писателей «Kipling, Rudyard» и «Киплинг, Редьярд» может объединить по совпадению идентификаторов; старая версия книги будет автоматически замещена исправленной. Впрочем, метаданные оказались несколько «СССР-центричными»: были отдельные жанры «русская литература» и «советская литература».[14]

Защита от копирования не предусмотрена. Однако, начиная с версии 2.1, добавлены специальные инструкции для библиотеки, позволяющие выдавать тексты за деньги.

Недостатки[править | править код]

Формат недостаточно выразителен для учебников, справочников и научных публикаций (о чём говорит даже название — «художественная книга»). В формате нет сложной вёрстки текста, нет поддержки нумерованных и маркированных списков, разрядки текста, средств формирования «замечаний на полях», авторского форматирования стихов и векторной графики.[15] Чтобы отобразить минимальную информацию о книге — название, автора и обложку — программе требуется прочитать и разобрать почти весь XML.[16]

Ссылки через XPath, заявленные в стандарте, на поверку реализует мало кто, ограничиваясь обычно формой #id.[17]

Программы[править | править код]

Книга в формате FictionBook в окне программы FBReader

Многие из известных электронных книг поддерживают FB2 только через внешнее ПО; разработки из постсоветских стран наподобие PocketBook и «Азбуки» читают FB2 изначально.

Программы, поддерживающие формат:

Чтение[править | править код]

Программа Windows MacOS Linux Android IOS Windows Phone Tizen Symbian BlackBerry
Ice Book Reader Да
CoolReader Да Да Да Да Да
Librera Да
FBReader Да Да Да Да Да[18] Да Да
AlReader Да Да Да
Moon+ Reader Да
Akunin Book Да
Fiction Book Reader Да
PyBookReader Да
STDU Viewer Да
eReader Prestigio Да
Book Bazaar Reader[19] Да Да
Fly Reader[20] Да Да
eBoox Да Да
EBookDroid Да
Яндекс.Браузер[21] Да Да Да Да Да
HedgehogReader Да
Smart Book Да Да

Редактирование[править | править код]

Программа Комментарий
genebook.de Онлайн редактор

См. также[править | править код]

Примечания[править | править код]

  1. Downloads - fictionbookeditor - FBE: FB2 document WYSIWYG/code editor - Google Project Hosting. Дата обращения: 8 декабря 2015. Архивировано 10 декабря 2015 года.
  2. TrID — 2003.
  3. gribuser: Что такое epub и почему он не заменит fb2. Дата обращения: 5 июня 2013. Архивировано 30 января 2013 года.
  4. Электронные библиотеки | 2004 | Том 7 | Выпуск 1 | Д.Грибов. Дата обращения: 24 августа 2019. Архивировано из оригинала 20 декабря 2018 года.
  5. gribuser: Что такое fb2 и почему он устарел. Дата обращения: 4 июня 2013. Архивировано 21 сентября 2014 года.
  6. Моята библиотека. Дата обращения: 1 июня 2013. Архивировано 1 июня 2013 года.
  7. E-grāmatas — Elektroniskā lasāmviela — Galvenā lapa. Дата обращения: 1 июня 2013. Архивировано 8 марта 2014 года.
  8. Grāmatas elektroniski (par brīvu). Дата обращения: 1 июня 2013. Архивировано 1 апреля 2013 года.
  9. gribuser: Как FB3 нас всех спасет. Дата обращения: 4 июня 2013. Архивировано 21 ноября 2016 года.
  10. Пишет gribusergribuser gribuser. fb3 - отчитываюсь о прогрессе. gribuser.livejournal.com. Дата обращения: 20 апреля 2022. Архивировано 26 августа 2017 года.
  11. Реализовано выделение строки в редакторе xml, в которой содержится не… // Github.com / Litres / FB3Editor. — 2019. — 3 декабря. — Дата обращения: 18.09.2022.
  12. Large FB3Reader update (syncing with or4) #34 // Github.com / Litres / FB3Reader. — 2020. — 5 June. — Дата обращения: 18.09.2022.
  13. Что такое FictionBook — FictionBook. Дата обращения: 8 мая 2022. Архивировано 6 июля 2020 года.
  14. Жанры FictionBook 2.1 — FictionBook. Дата обращения: 8 мая 2022. Архивировано 8 августа 2020 года.
  15. FictionBook 3.0 beta - краткое описание — FictionBook. Дата обращения: 8 мая 2022. Архивировано 27 июня 2020 года.
  16. Метаданные в начале текста, картинки — в конце.
  17. Элемент a — FictionBook. Дата обращения: 8 мая 2022. Архивировано 16 января 2021 года.
  18. FBReader ORG Limited. FBReader. FBReader. Дата обращения: 8 января 2019. Архивировано 9 июля 2017 года.
  19. Book Bazaar Reader – Приложения для Windows в Магазине Майкрософт. Магазин Майкрософт. Дата обращения: 25 февраля 2017. Архивировано 25 февраля 2017 года.
  20. Fly Reader – Приложения для Windows в Магазине Майкрософт. Магазин Майкрософт. Дата обращения: 25 февраля 2017. Архивировано 25 февраля 2017 года.
  21. Просмотр и редактирование файлов в браузере. Справка. browser.yandex.ru. Дата обращения: 12 июня 2020. Архивировано 12 июня 2020 года.

Статьи[править | править код]

Ссылки[править | править код]