Вадим Кузнецов
Описание работы пакета OOoFBTools Создание книг FB2
Описание работы пакета OOoFBTools
I Конвертер ExportToFB21
1. Описание
1.1. Назначение
Кроссплатформенный конвертер ExportToFB21 предназначен для конвертации документов из форматов, поддерживаемых OpenOffice.org Writerв формат fb2.1.
Т.о. входные форматы документов для ExportToFB21 следующие:.doc, dot, rtf, txt, html, htm, oth, odt, ott, stw, sdw, xml, vor, psw, wps, wpd, fodt, sxw, Microsoft Word 2003XML.xml, и другие, с которыми работает OpenOffice.org Writer.
Конвертер работает на тех платформах, где работает OpenOffice.org Writer, т. е. MS Windows 98/2000/XP/Vista, MacOS X, GNU/Linux, FreeBSD и т. д.
Конвертер не использует DOM технологию – задействован свой парсинг документов и печать в текстовый файл информации, собранной после анализа.
Если документ отформатирован стилями (см. п.3.) правильно(см. п.5.), то после его конвертации практически не требуется дальнейшая правка (за редким исключением, о чем см. п.7.) в редакторах fb2 формата! После проведения десятков тестов с документами различной структуры, полученные fb2 книги у меня всегда проходили валидацию.
1.2. Что реализовано
Конвертер писался для конвертации документов именно в формат fb2.1. Поэтому в нем реализованы почти все основные возможности этого формата.
1.2.1. Экспорт Description:
1. ‹title-info› – весь
2. ‹document-info› – весь
3. ‹publish-info› – весь
4. ‹custom-info› – весь
5. Аннотация к документу
6. История документа
1.2.2. Экспорт основных элементов структуры документа
1. Экспорт структурытекста (слов и абзацев).
2. Экспорт сносок и гиперссылок(на web странички).
3. Экспорт стилейабзацев, аннотаций, эпиграфов, цитат, поэм, заголовков, подзаголовков (т. е. теги ‹strong›, ‹emphasis›, ‹strikethrough›, ‹sub›, ‹sup›, ‹code›).
4. Экспорт стилейавторов цитат, авторов поем, авторов эпиграфов. Для поэмреализованы заголовки – ‹title›
5. Экспорта стилей текста сносок (т. е. все курсивы, полужирные начертания, верхние и нижние индексы и т. д. отображаются и в тексте сносок).
6. Для Поэм (Стихов) реализован заголовок ‹title›
7. Реализована возможность использования Аннотации на любом уровне (части книги, глав…).
8. Экспорт картиноки картинок-буквиц.
9. Число уровней вложений ‹section› – 10. При желании его можно увеличить хоть до бесконечности, внеся некоторые изменения в код конвертера (подсказка: ищите строки проверки на “Level 1”, “Level 2” и т. д. и дополняйте эти строки до нужного вам числа уровней. Всего процедур таких 3-4). Тогда нужно будет создать и соответствующие стили для новых уровней.
10. Экспорт простых и сложных Таблицс экспортом заголовков, выравниванием текста заголовков и ячеек, а так же форматирования стилями (полужирный, курсив, верхний/нижний индексы и т. д.), гиперссылок и переходов из строк таблицы в другие места файла. Работает экспорт сносок для строк ячеек таблиц. Экспорт нумерованных списков-абзацев, маркированных списков, а также списков с маркерами-картинки в ячейке. Сделан экспорт Картинок из ячеек Таблиц.
11. Самая главная фишка конвертера при работе с ‹section› – корректный экспорт самой разной структуры документа, без лишних, или наоборот, недостающих ‹section› или ‹/section›! Подробности см. ниже. Так что не нужно будет мучиться, отлавливая, где чего не хватает, чтобы документ fb2 прошел валидацию. Конечно, все это – при условии правильного задания стилями уровней заголовкам !
1.2.3. Дополнительные возможности
1. Реализовано 10 уровней вложения заголовков (‹section›‹title›Заголовок‹title›‹/section›). Но, алгоритм построен таким образом, что путем внесения в 3 процедуры нескольких строк кода, число вложений – уровней можно довести хоть до бесконечности! Мне больше 10 никогда не требовалось.
2. Реализована обработка « проблемных » символов ( amp;, ‹, ›), и замена их в fb2 файле на amp;amp; amp;lt; и amp;gt; соответственно. Иначе книга не проходит валидацию! Эта опция хороша для экспорта технической литературы . Для другого вида книг, если вы уверены, что этих символов там нет, опцию лучше отключить – скорость экспорта увеличится в несколько раз!
3. Возможность вставки перед сноской пробела(опция в Настройках).
4. Возможность выбора стиля сносок: x, [x], [x], {x}, { x }, (x), (x) (опция в Настройках).
Читать дальше