KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программирование » Вадим Кузнецов - Описание работы пакета OOoFBTools Создание книг FB2

Вадим Кузнецов - Описание работы пакета OOoFBTools Создание книг FB2

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн "Вадим Кузнецов - Описание работы пакета OOoFBTools Создание книг FB2". Жанр: Программирование издательство неизвестно, год неизвестен.
Перейти на страницу:

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

3. Поэма, где каждое четверостишие (или набор абзацев) взято в отдельное stanza. Достигается это вставкой между каждым четверостишием пустой строки со стилем Poem. Работает и с включенной опцией «Удалять пустые абзацы»!


4.6. Работа с цитатами

4.6.1. Структура цитаты

Согласно схеме FictionBook цитата (cite) имеет следующую структуру:

Т. е. он состоит из бесконечного числа чередований обязательных элементов (порядок очередности неважен) Текст, Поэма, Пустая строка, Подзаголовок, Таблица. Потом – необязательный элемент Автор цитаты (один или ни одного). Все это полностью реализовано в конвертере.

Если вы отформатируете стилями текст цитаты в соответствии с этой схемой на картинке, то конвертер экспортирует текст корректно. Если вы переставите местами Автора Цитаты и какой-либо элемент структуры Цитаты – то в fb2 файле книга не будет валидной. Так что будьте внимательны и сверяйтесь с этой схемой Цитаты!

Для форматирования Поэмы – элемента Цитаты, пользуйтесь теми же стилями, что и для Поэмы.


4.7. Работа с аннотациями

4.7.1. Структура аннотации

Согласно схеме FictionBook аннотация (annotation) имеет следующую структуру:

Т.е. он состоит из бесконечного числа чередований обязательных элементов (порядок очередности неважен) Текст, Поэма, Цитата, Подзаголовок, Таблица, Пустая строка. Все это полностью реализовано в конвертере.

Для форматирования Поэмы – элемента Аннотации, пользуйтесь теми же стилями, что и для Поэмы.


4.8. Работа с эпиграфами

4.8.1. Структура эпиграфа

Т. е. он состоит из бесконечного числа чередований обязательных элементов (порядок очередности неважен) Текст, Поэма, Цитата, Пустая строка. Потом – необязательный элемент Автор эпиграфа (один или ни одного). Все это полностью реализовано в конвертере.

Если вы отформатируете стилями текст эпиграфа в соответствии с этой схемой на картинке, то конвертер экспортирует текст корректно. Если вы переставите местами Автора Эпиграфа и какой-либо элемент структуры Цитаты – то в fb2 файле книга не будет валидной. Так что будьте внимательны и сверяйтесь с этой схемой Эпиграфа!

Для форматирования Поэмы – элемента Эпиграфа, пользуйтесь теми же стилями, что и для Поэмы.

4.8.2. Отделение одного элемента эпиграфа от другого

Как правило, конвертер сам распознает один элемент от другого внутри Эпиграфа по характерным признакам (Автор или Дата Стиха, Автор Цитаты и т. д.). Но в одном случае, когда после Цитаты Эпиграфа сразу идет Поэма конвертер «вложит» ее во внутрь Цитаты (т. к. Цитата тоже может содержать Поэму). Если же эта Поэма принадлежит не Цитате, а непосредственно Эпиграфу, то между Цитатой и этой Поэмой вставьте пустую строку стиля Текста Эпиграфа (Epigraph). Тогда Конвертер распознает и Цитату, и Поэму, как два самостоятельных элемента Эпиграфа.

Пример этого см. в файле-примере ExportToFB21_example-1.odt. Поэкспериментируйте.


4.9. Работа с внутренними ссылками (гиперссылки)

Гиперссылки используются для перехода из одного места документа в другое. Конвертер позволяет экспортировать следующие внутренние ссылки:

1. Переход из любого места Документа на любое другое место Документа (текст, Цитаты, Стихи, Заголовки и т. д.).

2. Переход из любого места Документа на любое место в тексте Сноски.

3. Переход с текста любой Сноски на любое место Документа.

4. Переход из текста одной Сноски на текст другой Сноски.

Конвертер пока не может экспортировать внутренние ссылки (переходы), связанные с Таблицами и Текстовыми Врезками.

Для задания внутренних ссылок (переходов) необходимо сделать следующее:

1. На абзац, КУДА нужно перейти, ставим закладку.

Например, для Текста Сноски (на картинке на эту сноску указывает красная стрелка):

Ставим курсор а начало абзаца, вызываем диалог Закладка (меню Вставка-›Закладка…). Задаем там нужное имя закладки, жмем Ok:

2. В абзаце, ОТКУДА нужно перейти, выделяем слово или словосочетание-переход, и форматируем его, как гиперссылку (меню Вставка-›Гиперссылка). В открывшемся диалоге для Документа выбираем Цель – Закладки, а там – нужную закладку для абзаца КУДА. Жмем Применить, закрываем диалог Цели, жмем Применить, закрываем диалог Гиперссылки.

Все!

5. Корректная структура документа (тонкости)

Мы не будем описывать здесь всю схему FictionBook2.1, а только те моменты, которые очень важны для правильной разметки структуры конвертируемого документа. Лишь в случае правильной разметки структуры экспорт произойдет без единой ошибки и править в полученном fb2 документе вообще ничего не надо будет, за исключение моментов, описанных в п. 5.

Итак, что такое "правильная" разметка структуры? Когда мы придаем отдельным абзацам определенные стили (поэма, цитата, заголовок (уровень), аннотация и т. д.) мы формируем структуру документа. А эта структура должна соответствовать схеме FictionBook2.1. Иначе документ сконвертируется, но валидацию не пройдет. Например: в книгах часто идет аннотация, а потом – эпиграф. Но, согласно схеме FictionBook2.1 должно быть наоборот – сначала эпиграф, а потом – аннотация. Если вы сделаете как в книге, а не по схеме – документ будет невалидный, и online-библиотеки, если не ошибаюсь, его не примут.

А теперь чуть подробнее.

Структуру документа, условно, можно разбить на два блока: 1. От названия книги и до самого первого заголовка (части, раздела) – мы называем это "Уровнем". 2. От этого самого первого заголовка и до конца документа. В этих двух блоках обрамление текста тэгами ‹section› несколько отличается.


5.1. Блок от начала книги до первого заголовка (уровня)

В 1-м блоке самым первым элементов должен быть Эпиграф, если он нужен. За ним могут идти еще несколько Эпиграфов, если они нужны, потом – Картинка, если она нужна, потом – Аннотация, если она нужна. При этом между всеми этими элементами не должно быть ни одной пустой строки! Иначе документ получится невалидным.

Теперь могут идти следующие элементы структуры в любом порядке: Просто абзац текста, пустая строка, Поэма, Цитата, Подзаголовок (SubTitle), Таблица, Картинка Схематично все это можно представить так (в квадратные скобки [] взяты необязательные элементы, в круглые () – названия стилей для создания структуры документов, жирным выделены элементы, которых может быть любое количество), синим цветом – элементы, которые могут идти в любом порядке:

5.2. Блок от первого заголовка (уровня) до конца документа

Во 2-м блоке дело обстоит немного по – другому.

2-й блок начинается с самого первого Уровня – Части книги, Раздела книги или просто заголовка. Уровней заголовков может быть 10 (стиль Level 1… Level 10) (хотя программно можно очень легко их увеличить хоть до бесконечности – особенность алгоритма). В книге может быть такая структура:

Наши элементы (абзацы, стихи и т. д.) могут быть как между Уровнями разного ранга – 1-й случай, например:

так и между Уровнями одного ранга (номера) – 2-й случай, например:

5.2.1. Смежные Уровни разного ранга (номера)

Для 1-го случая с Уровнями разного ранга схема немного другая, чем для блока от начала книги до первого заголовка (уровня). Отличие состоит лишь в том, что между уровнями может вообще не быть никаких элементов (стихов, абзацев…). Т. е. схема расположения элементов структуры такая же, как и для 1-го блока:

5.2.2. Смежные Уровни одного ранга (номера)

Для 2-го случая между Уровнями одного ранга должен быть хоть один какой-нибудь элемент, кроме необязательных Эпиграф и (или) Картинка и (или) Аннотация! Схема расположения элементов структуры такая (в двойные скобки { [] } взяты элементы, которые могут и не быть, но хоть один из них обязательно должен присутствовать):

5.2.3. Ошибки при разметке структуры смежных заголовков (уровней)

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*