Отличительной особенностью системы стилей в OOo является то, что это цельная интегрированная система. Практически все типы стилей взаимодействуют с другими типами стилей.
| Стили абзацев связываются |
со стилями списков для организации нумерации, стилями символов для оформления буквиц, стилями страниц для начала новых страниц; |
|
| Стили списков связываются | со стилями символов для оформления маркеров и номеров в списках. |
В управлении стилями есть два основных момента. Это наследование и управление.
Наследование стилей между абзацами реализовано следующим образом:
Управление стилями позволяет указать, какой стиль должен быть у следующего абзаца. Наследование задаёт иерархию стилей.
Другими словами – можно создавать один стиль на основе другого (родительского), указав только отличия потомка от родителя. Например, стиль «Основной текст с отступом» может отличаться от родительского стиля «Основной текст» только наличием этого самого отступа. Это приводит к тому, что изменение гарнитуры в стиле «Основной текст» произойдёт так же и в стиле «Основной текст с отступом». Таким образом, если грамотно выстроить всю систему стилей, то, например, для изменения шрифта во всём документе необходимо будет ввести изменения только в одном месте. А если документ насчитывает сотни страниц – экономию времени даже подсчитать невозможно.
Ещё остановимся на свойстве управления – Следующий стиль. Кратко об этом упоминалось выше. Что это даёт на практике. Допустим, после каждого заголовка первого уровня следует некий эпиграф или вводная, которая должна быть выделена курсивом и иметь большие отступы справа и слева. За вводной следует основной текст, но с буквицей. За этим абзацем – снова основной текст. Это легко реализуется с помощью создания цепочек стилей, связанных через параметры управления «следующий стиль».
OpenOffice.org обеспечивает несколько способов применения стилей. Ознакомиться с этими способами можно в книге «OpenOffice.org для профессионала». Здесь же будет показана наиболее эффективная методика работы со стилями.
Другое общепринятое название для этого окна — «Стилист».
Предлагаем держать это окно постоянно открытым и прищёлкнутым к правому краю главного окна OOo, тем более, что современные мониторы это позволяют. Фактически это первый из двух главных инструментов профессиональной работы в OOo. Второй — это «Навигатор». Но о нём речь пойдёт позже.
Стилист нам нужен будет постоянно, но пока оставим его в покое.
Хотя это и описано в Справке OOo, но практически никто не обращает внимание на эту возможность. Ведь кто читает Справку?
Итак, OOo предоставляет ряд предопределённой клавиатурных сочетаний клавиш, которые позволяют быстро применять стили к текущему объекту.
Остановимся на комбинациях для стилей заголовков. По умолчанию настроены следующие сочетания:
| [Ctrl]+[0] | Базовый |
| [Ctrl]+[1] | Заголовок 1 |
| [Ctrl]+[2] | Заголовок 2 |
| [Ctrl]+[3] | Заголовок 3 |
| [Ctrl]+[5] | Шаг строк: 1,5 |
| [Ctrl]+[9] | Основной текст |
Необходимо очистить назначения для [Ctrl]+[0], [Ctrl]+[5] и [Ctrl]+[9] и сделать назначения для следующих комбинаций:
| [Ctrl]+[0] | Основной текст |
| [Ctrl]+[4] | Заголовок 4 |
| [Ctrl]+[5] | Заголовок 5 |
| [Ctrl]+[6] | Заголовок 6 |
| [Ctrl]+[7] | Заголовок 7 |
| [Ctrl]+[8] | Заголовок 8 |
| [Ctrl]+[9] | Заголовок 9 |
Таким образом, с помощью комбинаций клавиш можно выстроить всю структуру заголовков документа.
Структура стилей, которая заложена в OOo охватывает практически все разделы документа. Однако часто предустановленных стилей не хватает. В этом случае создаём свои собственные.
Но следует помнить:
Все созданные пользователем стили, и отредактированные системные стили действительны только для текущего документа. Новый документ будет создан с установками «по умолчанию», не имея ни малейшего понятия о проделанный настройках стилей. Казалось бы — противоречие и отсутствие логики, но это не так. Всё логично и в полном соответствии с объектной моделью и принципом Наследования (статья «Философия OpenOffice.org»).
Все стили являются объектами метаобъекта Документ. Сам же Документ является дочерним объектом породившего его шаблона. А наследование снизу вверх не происходит. Следовательно, необходимо настроенный комплект стилей в составе документа превратить в родительский метаобъект. Для этого следует просто сохранить настроенный документ в виде шаблона. Подробнее об этом будет рассказано ниже в разделе «Концепция шаблонов».
Невозможно удалить любой из предопределённых стилей OOo, даже если они не используются, поскольку на них завязана функциональность офисного пакета.
Удалить возможно только любой из пользовательских стилей; однако перед этим следует убедиться в том, что этот стиль не используется. Если подлежащий удалению стиль используется, то следует его заменить другим стилем.
При удалении используемого стиля происходит его замена у использующих его объектов на родительский стиль.
Итак, принято решение о вводе корпоративного шаблона с отлаженной системой стилей. Естественно, все новые документы будут создаваться на его основе и будут оформлены надлежащим образом.
А как быть с уже имеющимися документами?
Для этой цели предназначен соответствующий и хорошо развитый механизм — Управление шаблонами.
С его помощью можно скопировать или переместить стиль из одного шаблона или документа в другой двумя способами:
К системному управлению относятся функции настройки списка:
Работа со списками не случайно включена в раздел «Концепция стилей», поскольку основана именно на стилях.
В «Стилисте» в разделах «стили абзаца» и «стили списка» присутствуют похожие названия. Это следует пояснить.
Таблица 5: Стили списков и соответствующие им стили абзацев
|
Стиль списка |
Стиль абзаца |
|---|---|
| Нумерованный список N | Начало нумерованного списка N |
| Нумерованный список N | |
| Продолжение нумерованного списка N | |
| Конец нумерованного списка N | |
| Маркированный список N | Начало маркированного списка N |
| Маркированный список N | |
| Продолжение маркированного списка N | |
| Конец маркированного списка N |
Существует два типа списков — нумерованные и маркированные. Разумеется, в маркированном списке могут быть номерные пункты, а в нумерованном — маркированные уровни. В этом случае подразделение списка на маркированный или нумерованный делается по типу первого уровня списка.
OOo поддерживает оба этих типа списков, и для них предустановлены по пять стилей списков.
Ну и зачем же нужны стили «Начало / Продолжение / Конец маркированного / нумерованного списка»? Для того, чтобы это понять, необходимо разобрать, что из себя представляет список с точки зрения документа и с точки зрения офисного пакета. То есть, с логической и физической сторон.
Вернемся к понятию «абзаца» и дадим определение понятию «список».
Абза́ц (общеупотребительная терминология) — отрезок письменной речи между двумя красными строками. Абзац, обозначая своего рода «цезуру», является единицей членения, промежуточной между фразой и главой, и служит для группировки однородных единиц изложения, исчерпывая один из его моментов (тематический, сюжетный и т. д.). Выделение фразы в особый абзац усиливает падающий на неё смысловой акцент.
Абза́ц (терминология текстовых процессоров) — отрезок текста между двумя символами абзаца, вставляемыми по клавише [Enter].
Список (общеупотребительная терминология) — сгруппированный перечень чего-либо, каждый элемент которого начинается с новой строки.
Список (терминология текстовых процессоров) — перечень чего-либо, каждый элемент которого является отдельным абзацем.
Отсюда видно, что, согласно общеупотребительной терминологии, список является одним абзацем, так как представляет собой однородную единицу изложения, в то время, как для текстового процессора список является последовательностью абзацев.
При оформлении документов абзацы принято отделять друг от друга дополнительными отступами. В этом случае и между элементами одного списка будут такие же отступы, и, зрительно, список рассыпается. Именно для того, чтобы решить эту проблему, и чтобы оформление списка было корректным, и нужны стили абзаца «Начало / Продолжение / Конец маркированного / нумерованного списка». Таким образом, при оформлении списка межабзацный отступ должен быть перед первым элементом списка и после последнего его элемента. После первого элемента и перед последним межабзацных отступов быть не должно. Так же их не должно быть между всеми промежуточными элементами списка.
Для этого первому элементу списка присваивается стиль «Начало маркированного / нумерованного списка», последнему элементу — «Конец маркированного / нумерованного списка», а промежуточным элементам — «Продолжение маркированного / нумерованного списка», в которых соответствующим образом настроены межабзацные отступы.
Следует особо отметить случай, когда механизм списков используется не для составления собственно списка или перечня, а для нумерации абзацев в тексте. Примером этого являются договора. В них каждый абзац идёт под своим номером, но при этом они не являются «списком» в его классическом понимании. Разумеется, в этом случае нет необходимости использовать стили «Начало / Продолжение / Конец маркированного / нумерованного списка». Здесь каждый пункт списка будет классическим абзацем.
К оперативному управлению относятся функции управления расположением абзацев внутри списка (применение списка к абзацам):
Выше мы рассмотрели, как настроить всю систему списков в документе с помощью стилей. С помощью функций оперативного управления производится непосредственная работа со списками в документе. Применение этих функций позволяет избежать таких приёмов ручного форматирования, как «копирование / вставка».
Следующий важный аспект концепции стилей касается проверки орфографии. OpenOffice.org Writer изначально рассчитан на мультиплатформенную работу и мультиязыковые тексты. Соответственно его возможности расширены. В нём введено понятие язык текста. Язык текста в Writer'е является частью стиля абзаца. Поэтому при наборе текстов, где есть вставки на других языках, достаточно для таких вставок создать отдельный стиль и указать в нём соответствующий язык. Тогда проверка орфографии пройдёт корректно для всего текста, независимо от того, на каком языке он написан. Количество поддерживаемых языков уже сейчас достаточно велико.
(Продолжение).