М.И. Кондратович (Юзич) СОЗДАНИЕ ЭЛЕКТРОННЫХ КНИГ В ФОРМАТЕ FictionBook 2.1: ПРАКТИЧЕСКОЕ РУКОВОДСТВО Предуведомление Предисловие Введение Часть I Формат FictionBook и его место в мире электронной литературы § 1.1 Неизбежность перехода от книг бумажных к книгам электронным § 1.2 Многообразие форматов электронных книг § 1.3 Несколько слов о XML § 1.4 Формат FictionBook — стандарт де-факто для электронных книг Часть II Подробное описание формата FictionBook § 2.1 Структура файла FictionBook. Базовые понятия § 2.2 Пример книги в формате FictionBook § 2.3 Элементы описания книги. Базовые структурные элементы § 2.4 Элементы описания книги (description). Элементы первого уровня § 2.5 Элементы описания книги (description). Элементы второго уровня § 2.6 Элементы описания книги (description). Элементы третьего уровня (информация об авторе) § 2.7 Элементы тела книги (body). § 2.8 Элементы раздела книги (section). Элементы первого уровня. § 2.9 Элементы раздела книги (section). Элементы второго уровня. § 2.10 Элементы таблиц § 2.11 Элементы абзаца (стилевые, они же inline элементы) § 2.12 Элементы для платных книг § 2.13 Спецсимволы § 2.14 Список атрибутов элементов § 2.15 Алфавитный список всех элементов FictionBook 2.1 Часть III Конвертирование книг из других форматов § 3.1 Требования к исходному тексту § 3.2 Any to FB2 § 3.3 ExportXML § 3.4 doc2fb § 3.5 Перенос через буфер обмена § 3.6 Конвертор ExportToFB21 для Open Office § 3.7 Написание собственного конвертора Часть IV Редактирование книг. FB Editor § 4.1 Установка программы § 4.2 Описание функций и основные приемы работы § 4.3 Заполнение заголовка книги § 4.4 Структурирование документа § 4.5 Использование регулярных выражений § 4.6 Использование скриптов § 4.7 Баги с нами! § 4.8 Дальнейшее развитие редактора § 4.9 Альтернативные средства редактирования Часть V Прочие вопросы создания книг в формате FictionBook § 5.1 Советы по оформлению книг § 5.2 Подготовка картинок § 5.3 Обложки § 5.4 Сборник или по отдельности? § 5.5 Советы по вычитке книг § 5.6 Символы, которых нет на клавиатуре § 5.7 Высокое искусство аннотации § 5.8 Проблемы распространения Часть VI Просмотр и конвертирование книг в формате FictionBook § 6.1 Читалки § 6.2 Пакет FB2Any § 6.3 FB2GrWolf § 6.4 FB2PDF Часть VII Прочее программное обеспечение для работы с FictionBook § 7.1 Программа-библиотекарь для книг в формате FictionBook § 7.2 Утилита Booki § 7.3 Программа-библиотекарь JEFLibrarian § 7.4 Программа-библиотекарь MyHomeLib § 7.5 FB2Fix Заключение. Копирайт и доступность Благодарности Обратная связь Приложения Приложение A Линки Приложение Б Техническое задание на написание читалки (ридера) Приложение В Список жанров FictionBook Приложение Г Список возможных языков Приложение Д Регулярные выражения Приложение E Описание Base64 Приложение Ж Описание стандарта ISBN Приложение З Попытка анализа влияния «пиратов» на тиражи книг Приложение И Копирайт и новая война луддитов
§ 2.3 Элементы описания книги. Базовые структурные элементы В самом начале любого файла книги идет признак формата XML
lt;?xml version="1.0" encoding="windows-1251"?gt;
Здесь указана сигнатура принадлежности к формату XML, его версия и кодировка файла. Для русскоязычных FictionBook это обычно windows-1251 или utf-8. [2.2]
За ним в обязательном порядке следует:
Элемент FictionBook Корневой элемент.
Cинтаксис : lt;FictionBookgt;contentlt;/FictionBookgt;.
Фактически, всегда используется в виде:
lt;FictionBook xmlns="http://www.gribuser.ru/xml/fictionbook/2.0" xmlns:l="http://www.w3.org/1999/xlink"gt;
content
lt;/FictionBookgt;.
Используется в элементах : корневой элемент
Вложенные элементы : stylesheet, description, body, binary
Количество вхождений : одно
Атрибуты : xmlns
Версия формата : 2.0
Пример : см. пример книги FictionBook, § 2.2
Элемент stylesheet Список стилей, позволяющих конкретно определить, как будет выглядеть книга на экране устройства для чтения. До последнего времени читалками не поддерживался и практически не использовался. Лишь в конце 2007 года появился CoolReader 3.09 с экспериментальной поддержкой stylesheet.
Cинтаксис : lt;stylesheetgt;contentlt;/stylesheetgt;.
Используется в элементах : FictionBook
Вложенные элементы : нет
Количество вхождений : одно или отсутствует.
Атрибуты : type
Версия формата : 2.0
Пример :
lt;stylesheet type="text/css"gt;
.body{font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;}
.p{margin:0.5em 0 0 0.3em; padding:0.2em; text-align:justify;}
lt;/stylesheetgt;
Элемент description Заголовок (описание) книги.
Cинтаксис : lt;descriptiongt;contentlt;/descriptiongt;.
Используется в элементах : FictionBook
Вложенные элементы : title-info, src-title-info, document-info, publish-info, custom-info, output
Количество вхождений : одно
Атрибуты : нет
Версия формата : 2.0
Пример :
lt;descriptiongt;
lt;title-infogt;
lt;genregt;nonfictionlt;/genregt;
lt;authorgt;
lt;first-namegt;Имя автораlt;/first-namegt;
lt;last-namegt;Фамилия автораlt;/last-namegt;
lt;/authorgt;
lt;book-titlegt;Название книгиlt;/book-titlegt;
lt;dategt;2007 г.lt;/dategt;
lt;langgt;rult;/langgt;
lt;/title-infogt;
lt;document-infogt;
lt;authorgt;
lt;nicknamegt;Юзичlt;/nicknamegt;
lt;/authorgt;
lt;program-usedgt;FB Toolslt;/program-usedgt;
lt;date value="2006-07-10"gt;2006-07-10lt;/dategt;
lt;idgt;46C35002-014D-4AE4-8FE4-5E7881D72B0Dlt;/idgt;
lt;versiongt;1.0lt;/versiongt;
lt;/document-infogt;
lt;/descriptiongt;
Элемент body Тело книги. Допускаются дополнительные body для примечаний и дополнительных материалов.
Cинтаксис : lt;bodygt;contentlt;/bodygt;.
Используется в элементах : FictionBook
Вложенные элементы : image, title, epigraph, section
Количество вхождений : одно и более
Атрибуты : name
Версия формата : 2.0
Пример :
lt;bodygt;
lt;titlegt;
lt;pgt;Заголовокlt;/pgt;
lt;/titlegt;
lt;sectiongt;
lt;pgt;Текст.lt;/pgt;
lt;/sectiongt;
lt;/bodygt;
Элемент binary Содержит бинарные элементы, присоединяемые к файлу книги. Как правило, это картинки.
Cинтаксис : lt;binarygt;contentlt;/binarygt;.
Используется в элементах : FictionBook
Вложенные элементы : нет
Количество вхождений : произвольное
Атрибуты : id (обязательный), content-type (обязательный)
Версия формата : 2.0
Пример :
lt;binary id="sampl.png" content-type="image/png"gt;
iVBORw0KGgoAAAANSUhEUgAAAAkAAAAICAMAAAAcEyWHAAAABGdBTUEAAK/INwWK6QAAABl0
RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAGUExURQEBAf///+tZAq0AAAAY
SURBVHjaYmBAAEZGRjDGzsKvDgYAAgwABR4AH2mwMFgAAAAASUVORK5CYII=
lt;/binarygt;