Изменить стиль страницы

С другой стороны, если после экспорта выдано сообщение, что экспортировано, например, 5 картинок из 6 найденных, то это может быть еще и по следующей причине: В документе есть ссылка на какой-нибудь сайт, где «лежит» не экспортированная картинка – она не экспортирована, т. к. до нее «не добраться».

Таблицы

1. Не экспортируются картинки из таблиц

Ответ на этот вопрос дан выше.

2. Некоторые таблицы либо не экспортируются, либо экспортируются не полностью – часть ячеек теряется

Таблицы существуют 3-х видов: 1). Простые матрицы; 2). Полусложные – разные строки имеют разное число колонок; и 3). Сложные – в отдельные ячейки таблицы вложены другие таблицы.

Конвертер отлично экспортирует 1-й вид таблиц. 2-й вид таблиц после экспорта в fb2 не всегда имеет первоначальное расположение ячеек в одной строке по отношению к ячейкам в другой строке (в будущем планируется доработать – есть определенные сложности). Но число ячеек в каждой строке экспортируется четко. 3-й вид таблиц либо просто игнорируется, либо, если они «не очень сложны» для конвертера – то частично экспортируются, игнорируя при этом все вложенные таблицы.

3-й вид таблиц чаще всего встречается в html-файлах – с форумов и т. д.

Совет – по возможности, старайтесь преобразовывать таблицы в более простой вид – к 1-му или 2-му типу.

Более подробно о работе с таблицами см. выше.

Разметка структур стилями

1. В некоторых частях текста есть «подпись» его авторов, но это не цитаты (например, Предисловие, а в его конце – ФИО его автора). Как мне экспортировать это ФИО не просто как текст (тэг ‹p›), а как Автора (тэг

‹text-author›)?

Это сделать довольно просто.

Например, в книге есть Предисловие, размеченное стилем Level N:

Описание работы пакета OOoFBTools Создание книг FB2 i_179.png

После экспорта получаем:

‹section›

‹title›

‹p›‹strong›Пpeдиcлoвиe‹/strong›‹/p›

‹/title›

‹р›Что-то там написано…‹/p›

‹р›Еще что-то написано…‹/p›

‹р›Иванов Иван Иванович‹/р›

‹/section›

Т.е. Иванов Иван Иванович экспортировался просто, как текст.

Вариант 1 (метод уже устарел, но работает)

Чтобы «его» экспортировать, как Автора Предисловия, не экспортируя при этом само Предисловие, как Цитату, нужно перед Автором вставить пустой абзац, придав ему стиль Cite, а Автору – стиль Cite Author. Тогда после экспорта получим:

‹section›

‹title›

‹p›‹strong›Пpeдиcлoвиe‹/strong›‹/p›

‹/title›

‹р›Что-то там написано…‹/p›

‹р›Еще что-то написано…‹/p›

‹cite›

‹empty-line/›

‹text-author›Ивaнов Иван Ивaнович‹/text-author›

‹/cite›

‹/section›

Что и требовалось.

Если не вводить пустой абзац стиля Cite, то конвертер не воспримет стиль Cite Author Автора Предисловия, как Cite Author, и экспортирует его просто как текст (и правильно сделает, иначе fb2-файл получился бы невалидным).

Этот прием можно применять в любых случаях, когда надо экспортировать Автора текста, как Автора, но сам текст – просто, как текст.

Вариант 2 (доработка конвертера)

Конвертер доработан так, чтобы экспортировать Автора Цитаты после текста без введения пустого абзаца стиля Cite Author между самим текстом и Автором Цитаты. Просто отформатируйте Автора Цитаты после текста стилем Cite Author. После экспорта получим примерно следующее:

‹section›

‹title›

‹р›‹strong›Предисловие‹/strong›‹/р›

‹/title›

‹р›Что-то там написано…‹/p›

‹р›Еще что-то написано…‹/р›

‹cite›‹text-author›Иванов Иван Иванович‹/text-author›

‹/cite›

‹/section›

Валидация

1. После экспорта fb2-файл получается не валидным – не соответствует схеме.

Программы-библиотекари и некоторые Internet-библиотеки его не принимают из-за ошибок в файле

Тут может быть несколько вариантов:

1. Элементы книги (стихи, эпиграфы, заголовки) должны быть отформатированы определенными стилями. При этом их расположение в книге должно четко соответствовать схеме FictionBook.xsd. Если это так, то результирующий fb2-файл получается валидным.

В zip-архиве пакета OOoFBTools есть папка scheme, которая содержит документацию по схеме FictionBook2.1. Она очень наглядна и показывает, какой элемент структуры где должен располагаться для того, чтобы fb2-файл был без ошибок, валидным. Пользуйтесь этой документацией, когда форматируете стилями текст книги!

Совет: внимательно изучите все вышеприведенные пункты справки.

2. Часто в тексте встречаются символы ‹, ›, и amp;, которые в таком виде в fb2-файле «считаются» ошибкой. В Настройках Конвертера предусмотрена опция «Обработка проблемных символов» (включена по-умолчанию). Проверьте, не выключили ли Вы ее?

3. Какая-то скрытая ошибка в конвертере, о какой пока еще не знает разработчик. В этом случае, пожалуйста, вышлите мне Ваш размеченный стилями текстовый файл, который Вы пытаетесь экспортировать в fb2-формат мне на e-mail #mailto: [email protected]

Вылет ошибки при конвертировании

1. При экспорте некоторых документов у меня вылетает сообщение об ошибке и экспорт прерывается

А. Чаще всего это происходит на документах, весь текст которых или большая его часть отформатированы одним стилем. Например, сборник стихов – весь текст отформатирован, как Поэма (Poem).

Дело в том, что Анализатор извлекает данные из документа по определенному стилю и аккумулирует их в виде строк. Это сделано для эффективности работы парсера и последующего этапа – Создание файла. Длина строки не должна превышать 64K. В документах, где весь текст или большая его часть отформатированы одним стилем, как правило, размер этого текста превышает 64K. В результате происходит переполнение и выдается ошибка.

Я не стал разбивать считывание строк на блоки меньше 64K, т. к. это не только усложнило бы написание Анализатора, но и очень существенно увеличило бы время экспорта (2 часа вместо 5 минут.)

Поэтому, чтобы избежать такой проблемы нужно делать следующее:

1). Понимать, что делаете. Не нужно форматировать весть текст одним стилем. Если вы создаете сборник стихов, то там, как правило есть авторы отдельных стихов. Выделите их стилем Poem Author. Это значительно уменьшит размер блоков текста под структуру (в данном случае – под Poem).

2). Если все же действительно нужно, чтобы весь текст был одного стиля (например – цитата (Cite)), то хотя бы в нескольких местах поставьте пустой абзац без какого-либо стиля.

Б. Сообщения об ошибке могут появляться и по другим причинам (все не предусмотришь). В таком случае, пожалуйста, вышлите мне ваш. odt-файл по email (он указан в О программе пакета).

Вычитка