- •1 Введение
- •2 Структура документа, подготовленного в LaTeX’е
- •3 Основные средства форматирования
- •4 Макет полосы набора
- •5 Таблицы
- •6 Плавающие объекты
- •7 Переключение шрифтов
- •8 Высшая математика
- •9 LaTeX в многоязычной среде
- •10 Графика в LaTeX’е
- •11 Как использовать PostScript
- •12 Создание указателей
- •13 Создание списка литературы
- •14 Средства документирования макропакетов
- •А LaTeX: основы программирования
- •В Техническое обеспечение и группы пользователей
М.Гуссенс, Ф.Миттельбах, А.Самарин
ПУТЕВОДИТЕЛЬ ПО ПАКЕТУ LATEX И ЕГО РАСШИРЕНИЮ LATEX2E:
Справочное руководство по пакету LATEX2e—современной версии LATEX'a,
— ставшему в настоящее время стандартом de facto. Благодаря гибкости, простоте использования и профессиональному полиграфическому качеству, LATEX, разработанный на базе издательской системы TEX Дональда Кнута, широко применяется при подготовке изданий как по точным, так и по гуманитарным наукам. Авторам — известным специалистам в этой тематике (Швейцария, ФРГ, Швейцария) — удалось в полном объеме представить инструментарий LATEX'a: NFSS2, AMS-LATEX, epic, eepic, MakeIndex и BibTeX, а также богатую библиотеку пакетов (более 150) по плавающим объектам, графике, таблицам, языку PostScript и многоязыковой поддержке.
Книга предназначена для тех, кто хочет знать, как расширить возможности lATEX'a, чтобы уметь красиво оформлять издания: для профессиональных
полиграфистов, авторов, разработчиков и программистов. |
|
Предисловие редактора перевода |
5 |
Предисловие |
11 |
1 Введение |
19 |
1.1 Краткая история TeX’а и LaTeX’а |
19 |
1.1.1 Вначале был TeX |
19 |
1.1.2 Потом Лесли Лэмпорт придумал LaTeX |
20 |
1.1.3 С LaTeX’ом в 2000 год? |
21 |
1.2 LaTeX и его составляющие |
21 |
1.2.1 Как работает LaTeX? |
21 |
1.2.2 Выходные процессоры (драйверы dvi) |
24 |
1.3 Концепция общей разметки |
25 |
1.3.1 Что такое общая разметка? |
25 |
1.3.2 Преимущества общей разметки |
26 |
1.3.3 Разделение содержания и формы |
27 |
1.4 Необходимость локальной разметки |
27 |
1.4.1 Недостатки локальной разметки |
27 |
1.4.2 Когда использовать локальную разметку |
28 |
2 Структура документа, подготовленного в LaTeX’е |
29 |
2.1 Структура исходного файла |
29 |
2.1.1 Обработка опций и пакетов |
31 |
2.1.2 Разделение исходного файла на части |
34 |
2.1.3 Комбинирование нескольких файлов |
35 |
2.2 Логическая структура |
35 |
2.3 Команды секционирования |
36 |
2.3.1 Нумерация заголовков |
38 |
2.3.2 Форматирование заголовков |
42 |
2.3.3 Изменение стандартных заголовков |
48 |
2.4 Структура оглавления |
49 |
2.4.1 Набор оглавления |
50 |
2.4.2 Ввод информации в файлы оглавления |
53 |
|
2.4.3 Определение нового файла, аналогичного .toc |
54 |
|
2.4.4 Сложные оглавления |
55 |
|
2.5 |
Управление ссылками |
58 |
2.5.1 varioref — более гибкие ссылки |
60 |
|
2.5.2 Ссылки на внешние документы |
64 |
|
3 Основные средства форматирования |
65 |
|
3.1 |
Фразы и абзацы |
66 |
3.1.1 letterspace — изменение межбуквенных интервалов |
66 |
|
3.1.2 ulem — выделение посредством подчеркивания |
67 |
|
3.1.3 xspace — гибкий пробел после макро |
68 |
|
3.1.4 Выравнивание внутри абзаца |
69 |
|
3.1.5 doublespace —изменение интерлиньяжа |
70 |
|
3.1.6 picinpar — набор абзацев с прямоугольными окнами |
71 |
|
3.1.7 shapepar — набор абзацев необычной формы |
72 |
|
3.2 |
Структуры перечня |
74 |
3.2.1 Модификация стандартных перечней |
74 |
|
3.2.2 Создание собственных перечней |
78 |
|
3.3 |
Подражание машинописному шрифту |
84 |
3.3.1 alltt—окружение типа verbatim |
84 |
|
3.3.2 verbatim — стиль для литературного текста |
84 |
|
3.3.3 moreverb—дополнительные окружения типа verbatim |
85 |
|
3.4 |
Примечания: подстрочные, на полях, выносные |
88 |
3.4.1 Создание сносок |
88 |
|
3.4.2 Примечания на полях |
92 |
|
3.4.3 Выносные примечания |
93 |
|
3.5 |
Использование многоколонного набора |
94 |
3.5.1 multicol — гибкий способ работы с многоколонным документом |
94 |
|
3.5.2 Набор текста в колонках |
95 |
|
3.5.3 Создание окружения multicols |
96 |
|
3.5.4 Плавающие объекты и сноски в multicol |
98 |
|
3.5.5 ftnright — сноски в правой колонке при двухколонном окружении |
98 |
|
3.6 |
Простое управление версиями |
100 |
4 Макет полосы набора |
101 |
|
4.1 |
Геометрические параметры макета полосы набора |
102 |
4.2 |
Изменение макета |
105 |
4.2.1 Пакеты для создания макета полосы набора |
107 |
|
4.2.2 Горизонтальное расположение полос набора при печати |
109 |
|
4.3 |
Стили полосы |
110 |
4.3.1 Написание новых стилей полосы |
112 |
|
4.3.2 Создание стиля полосы при помощи fancyheadings |
114 |
|
4.4 |
Явное форматирование |
117 |
5 Таблицы |
120 |
|
5.1 |
Сравнение окружений tabbing и tabular |
121 |
5.2 |
Использование окружения tabbing |
122 |
5.2.1 Окружение program |
123 |
|
5.3 array — расширение окружений tabular |
124 |
|
5.3.1 Примеры команд преамбулы |
124 |
|
5.3.2 Стилевые параметры |
129 |
|
5.3.3 Определение новых спецификаторов колонок |
131 |
|
5.3.4 Некоторые особенности реализации пакета array |
132 |
|
5.3.5 tabularx — автоматическое вычисление ширины колонок |
133 |
|
5.3.6 delarray — определение вида ограничителей для окружения array |
137 |
|
5.4 |
Многостраничные таблицы |
138 |
5.4.1 supertab —верстка многостраничных таблиц |
138 |
|
5.4.2 longtable —усложненные многостраничные таблицы |
142 |
|
5.4.3 Завершающее сравнение окружений supertabular и longtable |
147 |
|
5.5 |
Дополнительные штрихи |
147 |
5.5.1 dcolumn — управление выравниванием в колонках таблицы |
147 |
|
5.5.2 hhline — комбинирование горизонтальных и вертикальных от |
151 |
|
|
резков |
|
5.6 |
Приложения |
152 |
5.6.1 Переносы в узких колонках |
152 |
|
5.6.2 Сноски в таблицах |
153 |
|
5.6.3 Таблицы с широкими графами |
154 |
|
5.6.4 Колонки, занимающие несколько строк таблицы |
155 |
|
5.6.5 Таблицы внутри таблиц |
157 |
|
5.6.6 Еще два примера |
160 |
|
6 Плавающие объекты |
162 |
|
6.1 |
Параметры плавающих объектов |
162 |
6.2 |
Улучшенное размещение плавающих объектов |
166 |
6.3 float — создание новых видов плавающих объектов |
169 |
|
6.3.1 Разместить плавающий объект «здесь» ! |
171 |
|
6.4 |
Другие виды плавающих окружений |
173 |
6.4.1 floatfig — узкие плавающие рисунки «в оборку» |
173 |
|
6.4.2 wrapfig — неплавающие рисунки «в оборку» |
174 |
|
6.4.3 subfigure — рисунки внутри рисунков |
176 |
|
6.4.4 endfloat — размещение рисунков и таблиц в конце документа |
176 |
|
6.5 |
Создание своих названий |
178 |
7 Переключение шрифтов |
180 |
|
7.1 |
Введение в NFSS |
180 |
7.2 |
Характеристики шрифтов |
182 |
7.2.1 Моноширинные и пропорциональные шрифты |
183 |
|
7.2.2 Шрифты с засечками и без засечек |
184 |
|
7.2.3 Семейства шрифтов и их атрибуты |
184 |
|
7.2.4 Схемы кодирования |
189 |
|
7.3 |
Переключение шрифтов в тексте |
190 |
7.3.1 Стандартные шрифтовые команды NFSS |
191 |
7.3.2 Комбинирование стандартных команд управления шрифтами |
196 |
7.3.3 Сравнение командного и декларативного способов переключения |
197 |
шрифтов |
|
7.3.4 Доступ ко всем литерам шрифта |
199 |
7.3.5 Изменение значений по умолчанию для атрибутов текстовых |
200 |
шрифтов |
|
7.3.6 Шрифтовые команды LaTeX 2.09 |
202 |
7.4 Переключение шрифтов в формулах |
202 |
7.4.1 Специальные идентификаторы математических алфавитов |
203 |
7.4.2 Текстовые шрифтовые команды при наборе математических |
206 |
формул |
|
7.4.3 Версии математических формул |
207 |
7.5 Стандартные пакеты |
208 |
7.5.1 Добавление новых текстовых шрифтов |
209 |
7.5.2 Подключение новых математических шрифтов |
212 |
7.5.3 slides — получение демонстрационных слайдов |
214 |
7.5.4 Обработка ранее созданных документов |
214 |
7.5.5 Специальные пакеты для NFSS |
215 |
7.6 Низкоуровневый интерфейс |
217 |
7.6.1 Установка индивидуальных шрифтовых атрибутов |
218 |
7.6.2 Установка значений для нескольких шрифтовых атрибутов |
223 |
7.6.3 Автоматические подстановки шрифтов |
224 |
7.6.4 Использование низкоуровневых команд в документе |
225 |
7.7 Подключение новых шрифтов |
225 |
7.7.1 Общая схема |
225 |
7.7.2 Объявление новых семейств шрифтов и групп начертаний |
226 |
шрифтов |
|
7.7.3 Параметры управления загрузкой шрифтов |
235 |
7.7.4 Ввод определений новых схем кодирования |
235 |
7.7.5 Внутренняя организация файла |
236 |
7.7.6 Объявление новых шрифтов для математических формул |
238 |
7.7.7 Порядок записи деклараций |
243 |
7.8 Предупреждения и сообщения об ошибках |
244 |
8 Высшая математика |
252 |
8.1 Создание AMS-LaTeX’а |
252 |
8.2 Шрифты и символы в формулах |
253 |
8.2.1 Команды для математических шрифтов |
253 |
8.2.2 Математические символы |
254 |
8.3 Составные символы, ограничители и операторы |
260 |
8.3.1 Кратные интегралы |
260 |
8.3.2 Стрелки сверху и снизу |
260 |
8.3.3 Многоточия |
261 |
8.3.4 Двойные акценты |
261 |
8.3.5 Акценты как верхние индексы |
262 |
8.3.6 Акценты в виде точек |
262 |
8.3.7 Корни |
262 |
8.3.8 Формулы в рамке |
262 |
8.3.9 Растяжимые стрелки |
263 |
8.3.10 Команды \overset, \underset и \sideset |
263 |
8.3.11 Команда \smash |
264 |
8.3.12 Команда \text |
264 |
8.3.13 Названия новых операций |
265 |
8.3.14 Команда \rnod и ее аналоги |
266 |
8.3.15 Дроби и родственные конструкции |
266 |
8.3.16 Непрерывные дроби |
268 |
8.3.17 Ог-г-г-громные ограничители |
268 |
8.4 Окружения типа матрицы и коммутативные диаграммы |
269 |
8.4.1 Окружение cases |
269 |
8.4.2 Окружения типа matrix |
269 |
8.4.3 Команда \substack |
271 |
8.4.4 Коммутативные диаграммы |
271 |
8.5 Выравнивание многострочных формул |
272 |
8.5.1 Несколько формул без выравнивания |
273 |
8.5.2 Несколько формул с выравниванием |
274 |
8.5.3 Разбитые на части формулы без выравнивания |
275 |
8.5.4 Разбитые на части формулы с выравниванием |
275 |
8.5.5 Окружения выравнивания для набора отдельных частей |
276 |
выключных формул |
|
8.5.6 Вертикальные пробелы и разрывы страниц при наборе формул |
277 |
8.5.7 Команда \intertext |
277 |
8.6 Разное |
278 |
8.6.1 Нумерация формул |
278 |
8.6.2 Установка счетчика формул |
279 |
8.6.3 Подчиненная нумерация формул |
279 |
8.6.4 Тонкая настройка в математическом режиме |
280 |
8.6.5 На что еще обратить внимание |
280 |
8.6.6 Опции к пакету amsmath и отдельные его составляющие |
281 |
8.6.7 Классы документов AMS-LaTeX’а |
283 |
8.7 Примеры многострочных формул |
283 |
8.7.1 Окружение split |
283 |
8.7.2 Окружение multline |
286 |
8.7.3 Окружение gather |
287 |
8.7.4 Окружение align |
287 |
8.7.5 Использование окружений align и split внутри gather |
288 |
8.7.6 Использование окружений alignat |
289 |
8.8 Расширения для окружения theorem |
290 |
8.8.1 Как определять новые окружения типа теоремы |
291 |
8.8.2 Примеры определений и использования теорем |
293 |