Как сделать книгу

Материал из FictionBook
Перейти к: навигация, поиск

Чтобы сделать действительно хорошую книгу, которой не стыдно было бы поделиться с другими (а для частного использования достаточно установить BookDesigner и/или Any to FB2 и совершенно не нужно читать этот документ), придётся приложить некоторые усилия.

Хорошей книгой считается валидная книга с грамотно выделенными сносками, стихами, эпиграфами, другим форматированием и имеющая полнокровный заголовок (имя переводчика, обложка, etc.)

Содержание

Общая последовательность действий

  • Получение первичного fb2 из txt|doc|html|etc.
    • Программы для создания fb2
    • Простой импорт с использованием Any2FB
  • Доработка тела документа
    • Удаление контейнеров
    • Корректировка fb2, выделение стихов и т.п.
    • Оформление сносок (инструкция пока не готова, но Any2FB сразу создает нормальные сноски из сносок вида [текст сноски])
  • Заполнение заголовка
  • Работа с xml-исходником
  • Чего НЕТ в этом документ

Получение первичного fb2

Этот этап требует наибольшей сноровки. Тут вам могут пригодиться следующие программы:

  • BookDesigner (и его клон Fiction Book Designer)- монстроподобный и не очень эстетичный инструментище. Среди его неоспоримых достоинств - уникальная в своем роде всеядность. Он может достаточно корректно распознать многие экзотически изуродованные тексты, читает всеразличные prc, pdf и даже lit (для этого, впрочем, придется пошаманить). Последняя версия включает достаточно удобный fb2 section editor и умеет работать с регулярными выражениями. Снабжен справкой. Неплохой выбор для начинающих, полезный инструмент в руках мастера. Лично я его на дух не переношу (GribUser).
  • Any to FB2 - не столь всеядный, но куда более легковесный и немного более управляемый инструмент. Замысловатые тексты на входе могут потребовать известной ловкости рук и знания регулярных выражений.
  • ExportXML.dot - лаконичный, но эффективный макрос для MSWord. Несмотря на свою седую древность, весьма достойный инструмент для преобразования грамотных doc|rtf файлов.
  • doc2fb - несколько более современный и простой в эксплуатации аналог ExportXML.dot. Для тех, у кого стоит MSOffoce 2003.
  • FictionBook Tools - последний в списке, но первый по важности. Не лишенный недостатков, ено единственный в своем род инструмент для ?доводки? документов fb2. Must have.
  • Полный список утилит для работы с fb2.

Список выглядит несколько пугающе, но не все так страшно :) Я предлагаю начать работу со связки FBE+Any2FB.

Импорт простого документа с использованием FBE+Any2FB

Установите FictionBook Tools и Any to FB2. Возможно, вам придется установить последний MSXML или даже обновить систему - FBTools не работают в Win9x.

Итак, система обновлена, а программы установлены. Открываем Fictionbook Editor из пакета FBTools, вызываем меню ?Import?/?ANY->FB by GribUser?. Двинемся от простого к сложному, для начала сконвертим документ из lib.ru. Вводим адрес текста в Any2FB, сбрасываем настройки (если вы уже пользовались Any2FB) и нажимаем ?Import?.

Импорт документа

После того, как мы увидим на вкладке Log обнадеживающую фразу Export finished , нажимаем кнопку ?Done?. Документ передается в FBE и мы можем увидеть, что получилось при импорте. Были распознаны заголовки, была распознана одна сноска. Параграфы выглядят неплохо. Единственная претензия - заголовок всего документа был преобразован в отдельную пустую секцию плюс как заголовок была распознана строка про OCR.

Загруженный документ

Доводка тела документа в FBE

Базовые операции по корректировке и облагораживанию fb2.

Приступим к тому, ради чего все и затевалось - к доводке. Первую строку исходного документа я предлагаю просто удалить (некоторые делают из нее title для body, но я не считаю это разумным). Простая операция удаления лишней секции с title, однако, сопряжена с известными трудностями в редакторе FBE. Удаление элементов структуры (как то: стихов, секций, эпиграфов) можно производить только из предыдущего элемента.

Установите курсор над заголовком ?Аркадий и Борис Стругацкие. Частные предположения? и нажмите клавишу ?Del?.

Удаление элемента

В результате текст перешел в предыдущий элемент, а старый структурный элемент удален. Жмите ?Del?, пока текст не удалиться. Этот метод работает для любых элементов FB2 и использовать его вы будете широко.

После удаления

Прежде, чем аналогичным образом мы разделаемся с секцией ?/* Scaned...? полезно будет заглянуть в редактор заголовка. Среди прочего он предлагает ввести и информацию о OCR. Перенесем туда (Copy+Paste) информацию из тела документа и теперь уже со спокойной совестью удалим текст об OCR - никто не забыт. Не забыто так же и то, что удалять секцию нужно из предыдущего элемента.

Заполнение OSR

Аннотация, эпиграфы, стихи, картинки

В режиме ?body? в начале документа цветными маркерами слева отмечаются разделы ?annotation? (серо-голубой) и ?history? (малиновый). Очень желательно заполнить annotaion (аннотация), тем самым существенно облегчив жизнь будущим читателям). Если вы меняли что-то в готовом fb2 документе, заполните историю - например, укажите, что документ вычитан, добавлена пропущенная при сканировании страница и т.п. Не забудьте изменить и номер версии документа (см. ниже).

При необходимости можно добавить эпиграф: поставить курсор туда, где он должен быть (эпиграф должен следовать сразу за началом секции и ее названием, если оно есть) и нажать Ctrl+N (или Edit=>Add=>Epigraph). Появится фиолетовая полоска, в которую и надо скопировать эпиграф (можно просто перетащить). Если эпиграфом служит стихотворение, то внутри фиолетовой полоски (тега <epigraph>) надо нажать Ctrl+P (или Edit=>Insert=>Poem), появятся чёрная (<poem>) и тёмно-красная (<stanza>) полоски, в тёмно-красную следует перетащить стихотворение. <stanza> ? это строфа, и таких тегов может быть несколько подряд. У эпиграфа наверняка есть автор: перетаскиваем его имя в конец стихотворения, выделяем, нажимаем Ctrl+D (Edit=>Add=>Text Author) ? тёмно-красная полоска заканчивается, а чёрная продлевается на одну строчку; копируем имя автора в чёрную полоску (тег <text-author> после </stanza>). Всё, операция завершена (примечание: после эпиграфа должен следовать ещё какой-то текст, то есть тег <section> не должен закрываться сразу после эпиграфа). Нажимаем F8 (вызов встроенного валидатора), чтобы проверить документ на наличие ошибок. Если ошибка есть, откроется режим Source и курсор автоматически переместится к тому тегу, в котором сделана ошибка.

В книгу можно вставить картинку (например, обложку бумажной версии): Edit=>Add Binary Object. После этого файл с картинкой прикрепляется в конец документа и его можно использовать. Чтобы сделать картинку обложкой, в режиме Description вводим в поле Coverpage-Image его название, добавив предварительно # (например, #cover.png). Теперь обложка вставилась в Description книги (где её и можно увидеть в Haali Reader) и будет автоматически показываться на странице книги в библиотеке. Если нужно вставить рисунок в тексте, то следует нажать Ctrl+M (Edit=>Insert=>Image) или Ctrl+G (Edit=>Add=>Image). Появится пустая рамка с надписью Unknown image ID, на неё надо нажать и в выпадающем списке (панель вверху с надписью Href) выбрать ID (название) нужного рисунка.

Вставка картинки

Обратите внимание, что обложку не нужно вставлять в начало документа. Обложка указывается один раз, в description-е.

На закуску можно переименовать сноску ?Note_1? в, скажем ?[1]?. На этом наши злоключения с телом документа завершены.

Однако, кое-что еще на нашу долю осталось. А именно - заголовок, в котором пока есть только информация об OCR, а фамилия автора обозначена как ?Борис Стругацкие?. Не есть гуд.

Доводка заголовка

Опять переключаемся в режим заголовка (меню ?View?->?Description?) и приступаем к работе. Для начала выберем жанр. При размещении в библиотеке книга будет помещена на соответствующую ?полку? в соответствии с этим полем.

Выбор жанра

После этого переходим к оформлению авторов. В нашем случае это Аркадий Натанович и Борис Натанович Стругацкие.

Вставка авторов

В таком же духе следует заполнить весь заголовок. Ниже приведен рисунок с заполненными обязательными и необязательными полями. Обязательные поля помечены красным, где необходимо даны комментарии. Помните, что чем больше достоверной информации вы предоставите, тем лучше. Потратьте время на поиск даты написания произведения, имени переводчика, издательства, выпустившего книгу. Часто такая информация говорит о многом.

Заполнение description

Обратите внимание на название серии. Не нужно вводить название книги как ?Приключения пупкина I: Пупкин на Луне?, ?Приключения пупкина II: Пупкин на Марсе? и т.п. Вместо этого введите Book title ?Пупкин на Луне?, а в поле Sequence Name введите ?Приключения пупкина?. Не забудьте указать номер книги в серии, это позволит автоматически разложить книги по полочкам в библиотеке - сперва на луну, потом на марс, не наоборот.

Обратите также внимание на поле ID ? если вы будете загружать в библиотеку обновлённую версию своей книги, значение в этом поле (комбинация букв и цифр) должно оставаться прежним, а номер версии - возрасти. Это позволит обновить книгу даже, если вы поменяли название - книга все равно опознается как обновление к существующему документу и старый документ будет корректно заменен. Побочным эффектом такого способа идентификации книг является возможность удалить любую свою книгу из библиотеки - вы просто присваиваете новой книге ID намеченной на заклание жертвы и заливаете книгу в библиотеку поверх старой. Мир жесток.

Работа с исходным xml-кодом

Этот режим служит для исправления ошибок, сделанных в предыдущих двух а так же для выполнения всяких продвинутых (и не продвинутых) задач (типа вложения section) не имеющих удобной реализации в графическом интерфейсе :). Например, отсюда легко избавиться от лишних тегов <section> (а они наверняка появятся при экспорте). Имя автора и название книги не нужно выделять в отдельные секции, лучше поместить их в тег <title>, идущий сразу после <body>, а это можно сделать только в режиме исходника.

 <body>
 <title>
   <p>Philip Pullman</p>
   <p>The Amber Spyglass</p>
   <p>(His Dark Materials?Book Three)</p>
 </title>
 <section>
 ...

После этого уже открывается тег <section>, в который вложен текст книги, разбитый на главы (тег <title> после <section>). Если в книге несколько частей, то каждая из них должна находиться в отдельном контейнере <section>, в который будут вложены главы (тоже каждая в своём контейнере).

Вот, вроде, и всё. Ещё раз проверим книгу валидатором (F8), и можно отправлять в библиотеку (не забудьте ввести свой email и поставить галочку напротив ?разрешить обновление существующих книг?).

Если вы хотите посмотреть на хорошо подготовленный документ и вообще на примерах разобраться, что где ставить, рекомендую скачать книгу Психология искусства, там форматирование весьма навороченное и грамотное.

Психология искусства

Чего нет в этом документе

Это был курс молодого бойца и вы теперь сможете готовить весьма приличные документы. Однако, как вы обнаружите со временем, самое трудное - первый этап, а именно получение пригодного к доводке fb2. Данный документ, к сожалению, весьма слабо раскрывает эту тему, так что готовьтесь к худшему :).

Подготовка сносок так же сопряжена с известными трудностями, от которых вас избавит только Any2FB, да и то не полностью. Инструкции для всех этих многотрудных операций пока не готовы, и ваша помощь тут может помочь многим людям так же (если не больше), чем вам помог (надеемся) этот документ. Если вам есть, что сказать - поделитесь с народом.

Что точно нужно добавить:

  • Подготовка сложных документов с помощью Any2FB
  • Подготовка fb2 с помощью шаблона из ворда
  • Подготовка fb2 с помошью BookDesigner
  • Работа с регулярными выражениями

Если ваши методы работы отличаются от приведенных выше - пишите, мы включим их в инструкцию.

Шлите на grib@gribuser.ru ваши предложения, поправки, инструкции и гневные требования.

Rollon и Дмитрий Грибов

Личные инструменты