FictionBook 3.0 beta - краткое описание
Материал из FictionBook.
(Различия между версиями)
Версия 14:00, 5 июля 2008 Sclex (Обсуждение | вклад) Пример содержимого fb3-архива: - "Втораая" -Ю ← К предыдущему изменению |
Версия 14:15, 5 июля 2008 Sclex (Обсуждение | вклад) Пример содержимого fb3-архива: - наглАднее -> наглЯднее К след. изменению → |
||
Строка 57: | Строка 57: | ||
|- | |- | ||
|    '''text.dir''' | |    '''text.dir''' | ||
- | | -> Папка, в которой лежат тексты (могли лежать и в корне, но так нагладнее) | + | | -> Папка, в которой лежат тексты (могли лежать и в корне, но так нагляднее) |
|- | |- | ||
|       '''part1.xml''' | |       '''part1.xml''' |
Версия 14:15, 5 июля 2008
Содержание |
Описание формата fb3 (предложение)
Ответственный: Грибов Д.П., grib@gribuser.ru
Дата создания: 3 июля 2008 г.
Общая информация о структуре fb3-файла
- Файл fb3 представляет собой стандартный zip-архив, допустимые методы сжатия - store (без компрессии) и deflate (совместимый с zlib).
- Все файлы внутри архива имеют латинские имена в нижнем регистре.
- В корне архива может присутствовать один из файлов cover.png/cover.jpg, содержащий обложку документа для быстрого отображения. Размер этой картинки не больше, чем 240*240. Полноразмерная обложка может размещаться в другом файле (описывается в fb3_meta.xml, см. ниже).
- В корне архива обязательно присутствует файл fb3_book.xml, содержащий описание и структуру документа.
- В корне архива может присутствовать файл fb3_marks.xml, содержащий заметки/закладки.
- Все прочие файлы в архиве должны быть прямо или косвенно указаны в одном из перечисленных выше *.xml-файлов (например, каждая картинка должна быть использована в документе, если она попала в архив).
- Наличие в zip-архиве файлов (помимо указанных выше), не описанных в документе, является некритической ошибкой. При обработке файла о данной ошибке редактор должен обязательно выдавать предупреждение. Читалка должна игнорировать лишние файлы.
- Ссылки на отсутствующие файлы, используемые в документах, являются некритической ошибкой. И читалки, и редакторы должны выдавать сообщение об ошибке или иным образом ясно информировать пользователя о недостающих файлах.
- В качестве графических форматов будет поддерживаться gif/png/jpg
.xml-файлы в архиве
fb3_meta.xml содержит:
- Метаинформация: название документа (пустое название недопустимо, редактор не должен позволять сохранять такой документ), авторы, жанр, etc. В основном повторяет дескрипшн fb2, со следующими отличиями:
- Упразднен src-title-info (информация библиографического характера будет отдельно обрабатываться, в книге ей делать нечего)
- Тег translator упраздняется
- Тег author в title-info получит новый атрибут role, который будет принимать значения author|translator|compiler|illustrator|editor. Тег translator упраздняется, соответственно.
- Добавлен необязательный book-sub-title для сложных заголовков.
- Новый тег quick-annotation для короткого (120 символов, к примеру) анонса
- Новый порядок тегов title-info:
- coverpage
- book-title
- book-sub-title
- sequence
- author
- genre
- Структура документа: дерево секций, объединенных.
- Оконечные (содержащие текст) секции будут храниться в отдельных файлах, которые описываются в виде атрибута xlink:href.
- Для всех секций возможно указание обложки, картинки, title, subtitle, id.
text#.xml – множественные файлы с текстом секций. Аналогичны содержимому оконечных секций в fb2 с небольшими расширениями. Имена и размещение файлов в архиве не оговаривается, но все они должны быть корректно адресованы через атрибут xlink:href секций в файле fb3_meta.xml. Нововведения по отношению к fb2:
- Нумерованные и ненумерованные списки
- Блоки, выпадающие из общего потока, с атрибутами float, align, width. Возможно, с разрешенной вложенностью. Возможно, с бордерами. К примеру <block float="left" width="40em" align="right"><p>тутатекст</p></block>.
- Убирается inline-элемент code, добавляется block-элемент code, аналог p.
- Картинки больше не хранятся в XML, лежат в архиве, отдельно.
- Сноски будут типизированные. Выделяются концевые и подстраничные. Читалке желательно отображать сноски соответственно.
- Сноски выделяются в отдельный section (или в несколько), и отделяются друг от друга не секциями, а новым тегом <note>
fb3_marks.xml содержит закладки – указывается адрес закладки (с точностью до символа, отмечается начало выделения и конец), тип закладки (закладка, заметка, правка). Адресация с использованием xpointer, в закладке может содержаться текст, аналогичный содержимому секций.
Пример содержимого fb3-архива:
Book.fb3 | -> fb3-файл, де-факто ZIP-архив |
fb3_meta.xml | -> Обязательный файл в архиве, содержит метаинформацию и структуру |
cover.png | -> Необязательный файл в архиве, содержит малоразмерную версию обложки |
text.dir | -> Папка, в которой лежат тексты (могли лежать и в корне, но так нагляднее) |
part1.xml | -> Первая секция (у нас всего две текстовых секции в тексте) |
part2.xml | -> Вторая секция |
fb3_marks.xml | -> Заметки/закладки на полях (которые поставила программа-читалка?) |