Создание электронных книг в формате FictionBook 2.1: практическое руководство (beta 4) - Михаил Кондратович
Шрифт:
Интервал:
Закладка:
Убрать линк можно, установив курсор на него и вызвав команду EditStyleRemove link (Ctrl+U).
Не следует злоупотреблять ссылками и превращать книгу в подобие Интернет-сайта. И уж тем более, совершенно недопустимы ссылки типа «читайте здесь»! Ведь, после преобразования книги в другой формат, такие «ссылки» потеряют всякий смысл.
Еще один интересный вопрос. Стоит ли оформлять как ссылки встречающиеся в тексте Интернет-ссылки («http://…», «www…» [email protected] и т.д.)? С одной стороны, редактор сам постоянно норовит это сделать. И читалки, корректно обрабатывающие такие ссылки (то есть, с открытием браузера) уже есть. С другой — в FB2 ссылки, в первую очередь, предназначены для перемещения по тексту.
Поэтому, если вас интересует мое мнение, то Интернет-ссылки достаточно выделить болдом.
Сноски отличаются от линков, тем, что ведут не в произвольное место книги, а в специально предназначенный раздел-body «notes».
Соответственно, чтобы делать сноски, нужно сначала этот раздел создать.
Для этого переходим в режим редактирования исходника и, найдя в конце книги закрывающий тэг </body> набираем после него:
<body name="notes">
<section>
<empty-line/>
</section>
</body>
Значение атрибута «name» элемента body должно быть именно «notes».
Дополнительное body можно вставить командой EditAddBody (Ctrl+B). Но потом все равно придется лезть в редактор исходника, чтобы добавить атрибут name.
Затем добавляем секции. Одна сноска — одна секция.
В некоторых книгах встречается оформление сносок просто абзацами. Должен сказать, что делать так не следует. Пусть даже сносок много и они все маленькие. Помимо того, что при переходе на сноску в читалке, будут отображаться все сноски, расположенные ниже выбранной, валидаторы библиотек могут забраковать такой файл. Кроме того, это может создать проблемы прочему обрабатывающему софту, например, той же утилите Booki.
В начале текста сноски должен идти порядковый номер сноски.
Секциям или абзацам, соответственно, присваиваются имена, например, «note01» и т.д.
После этого можно ссылаться на них. Для этого служит элемент «сноска». В отличие от линка, для сноски очень желателен специальный текст. Обычно это цифра в квадратных скобках, например, «[1]». При необходимости набрав, а затем выделив ее, вызываем команду вставки сноски: EditStyleFootnote (Ctrl+W). Выбор имени метки делается точно так же как для ссылки.
Настоятельно рекомендую заключать сноски именно в квадратные скобки. Это практически стандарт. Фигурные скобки «{}» обычно применяются для ссылок на список использованной литературы. А просто цифры, без скобок, конечно, выглядят красивее, но, при экспорте книги в txt, они просто потеряются.
Кстати о красоте. Если после слова идет знак препинания, то гораздо эстетичнее помещать сноску после этого знака, а не втискивать между ним и словом.
Если в книге очень много сносок, как, например, в эпопее Л.Н. Толстого «Война и мир», то представляется весьма разумным помещать текст сносок прямо в основном тексте, отграничив его все теми же квадратными скобками. Это идет несколько вразрез со стандартом, но главное для нас — удобство читателей, а программы-ридеры, которые показывают сноски, как всплывающие окна, еще не появились.
==ВАЖНО!========================
ОЧЕНЬ желательно, чтобы текст сноски был по обьему не более двух-трех абзацев. Это связано с тем что уже имеется софт, отображающий сноски, как полагается в цивильной книге, внизу виртуальной страницы. Также не исключено появление читалок, отображающих сноски в виде всплывающих окон. И дело даже не в том, что с длинными сносками такой софт будет глючить (а он, зараза, и глючит!). При отображении внизу страницы или отдельным окошком длинные тексты очень плохо смотрятся.
Также не стоит забывать про конверторы в PDF и другие полиграфически-ориентированные форматы. Они тоже любят размещать сноски внизу страницы.
Посему объемистые пояснения следует оформлять в виде приложений. Примерно так, как сделано в этой книге.
===============================
Ликвидировать сноску можно все той же командой EditStyleRemove links.
Вставка иллюстрацийВставить в книгу иллюстрации очень просто.
В меню Edit выбираем пункт Insert/Image (Ctrl+M).
(Не перепутайте с аналогичной командой — EditAddImage (Ctrl+G). Она выполняется точно так же, но предназначена для вставки картинок строго в начало секции.)
Должна появиться картинка с красной надписью «Unknown image ID». Это так называемая картинка-болванка.
Теперь надо присоединить настоящую картинку к файлу книги и связать ее с тэгом иллюстрации.
Присоединяем файл картинки командой EditAdd Binary Object.
Затем выделяем картинку-болванку и щелкаем по полю «Href:» панели линков. Нажимая стрелки управления курсором «вверх» и «вниз», выбираем картинку. Она тут же появится вместо картинки-болванки.
О том, как подготовить картинку-иллюстрацию читайте ниже. § 5.2 «Подготовка картинок».
Подписи к иллюстрациям рекомендуется делать обычным текстом, отделяя его от основного текста пустой строкой. Можно дополнительно выделить текст курсивом.
А если нужно быстро вытащить картинки из книги? Нет проблем. Проэкспортируйте ее в HTML (FileExportTo Html). Все картинки будут в каталоге [имя файла]_files, который будет создан в том же каталоге, что и файл HTML.
==ЭТО ИНТЕРЕСНО==================
Бывает, нужно извлечь растровую картинку из документа M$ Word. Функции экспорта картинок там не предусмотрено. Можно скопировать картинку в буфер, но если ее масштабировали, то она и скопируется с измененными размерами.
Как быть? Все очень просто. Сохраняем Word-документ, как HTML и все картинки будут в каталоге [имя файла]_files. В первозданном виде.
===============================
§ 4.5 Использование регулярных выражений
Функции поиска и замены в FB Editor предусматривают использование регулярных выражений (Regular Expressions, RegExp).
Регулярные выражения представляют собой квазиязык, объединяющий набор шаблонов и подстановок, используемых при поиске и замене фрагментов текста. Это очень мощный инструмент, кардинально облегчающий обработку текстовых документов.
Синтаксис регулярных выражений в FB Editor заимствован из языка Perl.
В приложении к книге дано краткое описание синтаксиса регулярных выражений, использующихся в FB Editor. Однако, настоятельно рекомендую этим не ограничиваться, а прочитать хороший учебник по языку Perl. А еще есть замечательная книга Дж. Фридла: «Регулярные выражения». Хорошенько поискав, ее можно найти в Сети ;)).
Рассмотрим использование регулярных выражений на примере достаточно сложной, но часто встречающейся задачи — замены компьютерных кавычек «""» на типографские „«»“.
Основная проблема здесь в том, что открывающие и закрывающие компьютерные кавычки одинаковы. Поэтому приходится ориентироваться по символам, расположенным рядом.
Обычным способом придется вызывать команду поисказамены не менее десяти раз, рискуя что-то забыть или перепутать. Регулярные выражения позволяют произвести все замены за четыре захода.
Для начала примем за аксиому, что кавычка, расположенная в самом начале абзаца — открывающая, а в самом конце — закрывающая.
Вызываем команду EditReplace.
В поле поиска «Find what:» вводим конструкцию для поиска:
^"
В поле замены «Replace with:» вводим конструкцию замены. В этом случае она совсем простая:
«
Не забыв установить флажок «Regular expression», нажимаем кнопку«Replace All».
Аналогично, для кавычки в конце абзаца конструкции поиска и замены будут:
"$
и
»
Выражения «^» и «$» называются литералами и обозначают начало и конец строки соответственно. В конструкции замены они не нужны.
Теперь обработаем оставшиеся кавычки.
Начнем с открывающей кавычки. Перед ними обычно идет пробел. Ну, иногда еще дефис или скобка.
Конструкция для поиска будет такая:
([s(-])"
Конструкция замены:
$1«
В квадратных скобках мы перечислили символы, один из которых может идти перед искомой кавычкой. Литерал «s» обозначает пробельный символ. Символ «скобка» является зарезервированным, так как используется в самих конструкциях регулярных выражений, поэтому, чтобы искать его в тексте, мы отделили его косой чертой. Заключив все это в круглые скобки, мы образовали выражение, к которому будем обращаться из строки замены. И в конце непосредственно сама искомая кавычка.