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

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

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

Все, что было написано для режима «Обрабатывать только разорванные дефисы» работает и в этом режиме. Только в дополнение к этому, удаляется не только разрыв дефисных слов, но и слова с разорванными переносами не игнорируются, и из них удаляется только символ «¶». Символ «-» не трогается. Этот режим удобен для исправления разрывов не только дефисов, но и слов, типа «давным-давно», «сестра-хозяйка», «белый-белый» и т. п. Например, слово «давным-¶давно» станет «давным-давно», а «смот-¶ри» – «смот-ри». В первом случае получили то, что и надо, а во втором – нет. Текст после коррекции можно «прогнать» ручным инструментом поиска слов с дефисом, и удалить «-» там, где он остался. Универсальный алгоритм предусматривал бы сравнение со списком из тысяч слов в разных склонениях и временных формах, и требовал бы часы, на отработку. Поэтому, этот алгоритм проще, хотя и не все корректно обрабатывает.

3. Дефисы и удаление из слов разрыва: и переноса (-) и абзаца (¶)

Все, что было написано для режима «Обрабатывать только разорванные дефисы» работает и в этом режиме.

Этот режим похож на описанный выше, с одним лишь отличием. Удаляется не только разрыв дефисных слов, но и оба символа разрыва «-¶» в слова с разорванными переносами. Например, слово «давным-¶давно» станет «давнымдавно», а «смот-¶ри» – «смотри». В первом случае получили не то, что надо, а во втором – именно то, что надо.

Таблица сравнения результата работы 3-х режимов коррекции

Для сравнения режимов возьмем такой произвольный текст (отражены и непечатные символы). Синим цветом показаны «дефисные» слова с разорванным дефисом, красным – слова с разорванным переносом, зеленым – «дефисные» слова без разрывов (просто для того, чтобы убедиться. Что с ними ничего не случится):

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


А.2. Файл настроек Корректора Текста

Настройка формы Корректора сохраняется в файл corrector.txt, который помещается в жестко заданную папку config пакета OpenOffice.org, откуда и загружается. Для Unix-подобных систем – это папка /home/XXX/.openoffice.org/3/user/config/OOoFBTools. Для Windows – это папка C: Documents and SettingsXXXApplication DataOpenOffice.org3userconfigOOoFBTools, где XXX – ваш логин (имя пользователя). Файл создается автоматически и все изменения в диалоге Корректора заносятся в него автоматически.


А.3. Это важно!

При работе с Корректором Текста важно помнить следующее: Обработку текста лучше проводить ДО того, как вы «отформатировали» стилями документ для конвертации его в формат fb2! Т. к., если в Корректоре выбрана опция «Удалить пустые абзацы…», и в «отформатированном» документе они есть, то после удаления этих пустых абзацев, абзацы, следующие за ними, «теряют» свои стили. Если это абзацы-уровни (Заголовки, Части книги), которые должны быть взяты в секции ‹section›, то корректность уровней нарушается, что в результирующем файле fb2 проявится, как некорректность расстановки секций. И дело тут не в конвертере – просто после удаления пустых абзацев Корректором и утраты следующим абзацем своего стиля, документ получается «отформатированным» стилями не корректно. Вводить в Корректор логику, отлавливающую стили последующих абзацев и восстанавливающую их – значит сделать то, что Корректор перестанет быть универсальным.

Конечно, можно подправить документ нужными стилями, и экспорт пройдет «на ура», но зачем двойная работа.

Поэтому, оговорюсь еще раз: Обработку текста лучше проводить ДО того, как вы «отформатировали» стилями документ для конвертации его в формат fb2!

Б. Склейка разорванных строк абзаца

Данный инструмент полезен для обработки многих текстов из Интернет-Библиотек, например, Мошкова, а также – некоторых html-файлов, где есть масса разрывов строк ‹BR›.

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

Не зависимо от режима Склейки, Инструмент автоматически удаляет все мягкие переносы и пробелы в конце абзацев. Иначе результат склейки будет неверным.

Рассмотрим режимы работы инструмента – идентификаторы нового абзаца, маркеры.


Б.1. Режимы склейки (по идентификатору нового абзаца)

Пробелы в начале абзаца

Часто «работаешь» с книгами, загруженными из сети, которые после OCR сохранялись, как простой текст. Красная строка «отбивалась», как несколько пробелов, а перевод строки сохранялся как окончание абзаца. Т. е. все строки каждого абзаца сохранились, как отдельный абзац. Править руками такую книгу удовольствия мало… Инструмент позволяет собрать такие строки в «нормальные» абзацы. При этом идентификатором «нового» абзаца является наличие в начале строки одного или нескольких пробелов.

Пример. Есть такой текст (для наглядности показаны и непечатаемые символы):

После обработки Инструментом получаем следующее:

Такому тексту для наглядности абзацев осталось только задать отступ 1-й строки каждого абзаца, и все!

Символы.!?…»”:; в конце абзаца»

Не менее часто встречаются книги, скаченные из сети, у которых нет Красной строки, обозначенной пробелами, а перевод строки сохранялся как окончание абзаца. Т. е. все строки каждого абзаца сохранились, как отдельный абзац. Этот вариант еще труднее править руками. Корректор позволяет собрать такие строки в «нормальные» абзацы. При этом идентификатором завершения абзаца является наличие в его конце вышеназванные символы.

Пример. Есть такой текст (для наглядности показаны и непечатаемые символы):

После обработки Инструментом Склейки получаем следующее:

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

“Пустой” абзац или одиночный разрыв строки

Еще один вариант распространенных в сети текстов – строки одного параграфа разорваны абзацем, а сами параграфы отделены друг от друга одним или несколькими «пустыми» абзацами. Такие тексты получаются при копировании текста из многих pdf- журналов. При выборе данного режима обработки, программа ищет блок текста (как правило разорванные строки одного абзаца) по идентификаторам – «пустой» абзац (одиночный разрыв строки ‹BR›). Найденное склеивается в один абзац.

Например, есть текст:

После обработки Инструментом Склейки получаем следующее:

Иногда некоторые абзацы не отделены от других пустым абзацем, и являются самостоятельными абзацами, не разорванными символом абзаца. К сожалению, они склеются с вышестоящими абзацами. Чтобы этого не произошло, надо просмотреть весь текст, и перед «целыми», неразорванными абзацами вставить пустой абзац, если его нет. Тогда Инструмент Склейки корректно обработает текст и склеит нужные абзацы в один. Так, что лучше немного потратить время на просмотр текста и вставку пустых абзацев в нужные места, если их там нет, нежели часами вручную склеивать строки в абзацы!


Б.2. Обработка разрывов дефисных слов и переносов

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

1. Удаление только разрыва абзаца(¶) и строки(BR); перенос (-) не удаляется

2. Удаление и разрыва переноса(-) и абзаца(¶) и строки(BR)

По сути, эта та же обработка разрывов, что и в Корректоре Текста (подробнее см. здесь). Инструмент будет обрабатывать такие разрывы в любом случае, иначе он не сможет корректно склеить все строки, принадлежащие к одному абзацу.


Б.3. Пост-обработка

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

Удалении пробелов в конце абзаца, если они есть, происходит автоматически.


Б.4. Файл настроек инструмента Склейки разорванных абзацев

Настройка формы Склейки разорванных абзацев сохраняется в файл corrector.txt, который помещается в жестко заданную папку config пакета OpenOffice.org, откуда и загружается. Для Unix-подобных систем – это папка

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