Главная страница

латех. Львовский С. М. Набор и вёрстка в пакете latex. 3е изд. М. Мцнмо, 2003. 2 Кнут Д. Всё про tex


Скачать 0.77 Mb.
НазваниеЛьвовский С. М. Набор и вёрстка в пакете latex. 3е изд. М. Мцнмо, 2003. 2 Кнут Д. Всё про tex
Анкорлатех
Дата11.02.2020
Размер0.77 Mb.
Формат файлаpdf
Имя файлаvoron05latex.pdf
ТипРеферат
#108035
страница2 из 4
1   2   3   4

ПРОПИСНЫЕ И СТРОЧНЫЕ 123?
прописные и строчные 123?

ПрОпИсНыЕ и СтРоЧнЫе 123?
\uppercase{ПрОпИсНыЕ и

СтРоЧнЫе 123?}
\lowercase{ПрОпИсНыЕ иСтРоЧнЫе 123?}
\textsc{ПрОпИсНыЕ иСтРоЧнЫе 123?}
130. Другие способы выделения текста.
черта сверху текст подчеркнут текст строчными текст ПРОПИСНЫМИ
текст выше на 2pt текст обведён в рамку текст рамка толщиной 2pt черта $\overline{\mbox{сверху}}$
текст \underline{подчеркнут}
текст \lowercase{СтРоЧнЫмИ}
текст \uppercase{пРоПиСнЫмИ}
текст \raisebox{2pt}{выше} на 2pt текст \fbox{обведён в рамку}
{ \setlength{\fboxrule}{2pt}
\setlength{\fboxsep}{8pt}
текст \fbox{рамка толщиной 2pt}}
131. Способы выделения текста в пакете \usepackage{ulem}\normalem.
Длинный подчеркнутый текст, в отли- чие от underline, может распространяться на несколько строк.
::
К
::::::::::::::::
сожалению,
::::::::::
переносы
::::::::::::::::::
приходится
:::::::::::::::::::
расставлять
::::::::::
вручную. Это не удобно! ///////////
Совсем//////
не
///////////
удобно.
\uline{Длинный подчеркнутый текст,
вотли\-чие отunderline, может распространяться нанесколько строк.}
\uwave{Ксожалению, переносы приходится расставлять вручную.}
\sout{Это не удобно!}
\xout{Совсем не удобно.}

26 132. Выделение текста цветом в пакете \usepackage{color}. Предопределённые имена цве- тов: black, white, red, green, blue, cyan, magenta, yellow.
Команда color переключает цвет, ко- манда textcolor действует только на свой аргумент.
Команда color \color{blue} переключает цвет, команда \textcolor{red}{textcolor}
действует только на свой аргумент.
133. Выделение фона текста и
определение собственных цветов в
пакете
\usepackage{color}.
Команда colorbox
Команда colorbox
Команда fcolorbox
\definecolor{light-blue}{rgb}{0.8,0.85,1}
\colorbox{light-blue}{Команда colorbox}
\definecolor{light-gray}{rgb}{0.8,0.8,0.8}
\colorbox{light-gray}{Команда colorbox}
\definecolor{lgreen}{rgb}{0.9,1,0.8}
\fcolorbox{green}{lgreen}{Команда fcolorbox}
134. Гиперссылки при подключении пакета \usepackage[colorlinks,urlcolor=blue]{hyperref}.
Наш сайт www.ccas.ru/frc
\href{http://www.ccas.ru/frc}{Наш сайт}
\url{www.ccas.ru/frc}
4.2
Выравнивание текста
135. Выравнивание по левому краю.
Текст выравнивается по левому краю
\begin{flushleft}
Текст\\ выравнивается\\ по левому краю
\end{flushleft}
136. Выравнивание по центру.
Текст выравнивается по центру
\begin{center}
Текст\\ выравнивается\\ по центру
\end{center}
137. Выравнивание по правому краю.
Текст выравнивается по правому краю
\begin{flushright}
Текст\\ выравнивается\\ по правому краю
\end{flushright}
138. Выравнивание с помощью растяжимых промежутков.
Выравнивание этого текста растяжимыми промежутками
Выравнивание \hfill этого \hfill текста
\par \hfil растяжимыми \hfil
\par \hfill промежутками
139. Команда \parbox делает из текста блок заданной ширины, который ведёт себя как один символ. Команда \centerline центрирует отдельную строку.
УТВЕРЖДАЮ
Директор ВЦ РАН чл.-корр. РАН
. . . . . . . . . . . . . . . . . Ю. Г. Евтушенко
\hfill\parbox{6cm}{
\centerline{УТВЕРЖДАЮ}
Директор ВЦ РАН чл.-корр. РАН
\hbox to 6cm{\dotfill Ю.Г.Евтушенко}}

27 140. Команды, управляющие формой абзаца.
Команда hangindent задаёт смещение строк, hangafter — число несмещённых строк, команда noindent удаляет абзацный отступ.
Отрицательный hangafter производит отступ. Поло- жительный hangafter производит выступ.
Отрицательный hangindent работает спра- ва. Положительный hangindent работает слева.
\hangindent=3cm \hangafter=2 \noindent
Команда hangindent задаёт смещение строк,
hangafter --- число несмещённых строк,
команда noindent удаляет абзацный отступ.
\hangindent=3cm \hangafter=-2 \noindent
Отрицательный hangafter производит отступ.
Положительный hangafter производит выступ.
\hangindent=-2cm \hangafter=1 \noindent
Отрицательный hangindent работает справа.
Положительный hangindent работает слева.
141. Команда \raggedright отменяет переносы и выравнивание по правому краю.
Команда raggedright отменяет переносы и выравнивание по правому краю.
Команда flushright делает рваный край слева, а не справа
\raggedright Команда raggedright отменяет переносы ивыравнивание поправому краю.
\par
\flushright Команда flushright делает рваный край слева, ане справа
4.3
Управление переносами слов
142. Расстановка переносов вручную. Команда \- отмечает места возможных переносов.
В
словах с
дефисом типа
«0- транспортировка» переносы не ставятся.
В словах с дефисом типа «0-транспор- тировка» переносы не ставятся.
Всловах сдефисом типа
<<0-транспортировка>> переносы неставятся.
\par Всловах сдефисом типа
<<0-транс\-пор\-ти\-ров\-ка>>
переносы неставятся.
143. Расстановка переносов вручную. Команда "= печатает дефис, разрешая делать перенос в самих словах. Требуется подключение пакета \usepackage[russian]{babel}.
В словах с дефисом типа «0-транспор- тировка» проблему переносов лучше ре- шать именно так.
Всловах сдефисом типа
<<0"=транспортировка>> проблему переносов лучше решать именно так.
144. Переключение правил переносов для длинных фрагментов английского текста. Требуется подключение пакета \usepackage[english,russian]{babel}.
After this command English hyphen- ation rules are ON.
After this command
English hyphenation rules are OFF.
\English After this command English hyphenation rules are ON. \par
\Russian After this command English hyphenation rules are OFF.

28 4.4
Перечни
145. Маркированный перечень. Может содержать до шести уровней вложенности.
• Метод Ньютона.
• Метод Лагранжа.
• Метод линеаризации.
\begin{itemize}
\item Метод Ньютона.
\item Метод Лагранжа.
\item Метод линеаризации.
\end{itemize}
146. Маркеры у перечня можно переопределить.
+ Доказана сходимость.
− Нет оценки скорости.
(?) Приводится текст программы.
\begin{itemize}
\item[$+$] Доказана сходимость.
\item[$-$] Нет оценки скорости.
\item[(?)] Приводится текст программы.
\end{itemize}
147. Перечень с заголовками.
itemize:
пункты помечаются маркерами;
enumerate:
пункты нумеруются;
description:
пункты снабжаются заголов- ками.
\begin{description}
\item[itemize:]
пункты помечаются маркерами;
\item[enumerate:]
пункты нумеруются;
\item[description:]
пункты снабжаются заголовками.
\end{description}
148. Нумерованный перечень. Может содержать до шести уровней вложенности.
Промежуток между текстом и переч- нем, а также между пунктами перечня.
1. Пункты нумеруются.
2. Вложенные перечни:
(a) до 6 уровней вложенности;
(b) отступы и нумерация меняются автоматически;
(c) на пункты можно ссылаться.
3. Пункты могут содержать абзацы,
формулы, и т. п.
Промежуток между текстом иперечнем,
атакже между пунктами перечня.
\begin{enumerate}
\item Пункты нумеруются.
\item Вложенные перечни:
\begin{enumerate}
\item до 6 уровней вложенности;
\item отступы и нумерация меняются автоматически;
\item на пункты можно ссылаться.
\label{enCanRef}
\end{enumerate}
\item Пункты могут содержать абзацы, формулы, ит.п.
\end{enumerate}
149. Ненумеруемый перечень или «тривиальный список».
Перечень из трёх пунктов:
во-первых;
во-вторых;
в-третьих.
Перечень из трёх пунктов:
\begin{trivlist}
\item во-первых;
\item во-вторых;
\item в-третьих.
\end{trivlist}

29 150. Нумерация элементов перечня русскими буквами. Семейство команд \theenumi,
\theenumii, \theenumiii, \theenumiv, \theenumv, \theenumvi, определяет вид номера пунк- та в ссылках. Семейство команд \labelenum{i. . . vi} отвечает за вид пункта в перечне.
Запомни два правила:
а) босс всегда прав;
б) если он не прав, см.
(а)
;
\renewcommand{\theenumi}{(\asbuk{enumi})}
\renewcommand{\labelenumi}{\asbuk{enumi})}
Запомни два правила:
\begin{enumerate}
\item\label{boss} босс всегда прав;
\item если он не прав, см.\ref{boss};
\end{enumerate}
151. Семейство команд \@list{i. . . vi} определяет геометрические параметры списка.
Тот же список после переопределения выглядит привычней для русского читателя.
Запомни два правила:
а) босс всегда прав;
б) если он не прав, см.
(а)
;
\renewcommand{\@listi}{
% вертикальные промежутки:
\topsep=0pt % вокруг списка
\parsep=0pt % между абзацами
\itemsep=0pt % между пунктами
% горизонтальные промежутки:
\itemindent=0pt % абзацный выступ
\labelsep=1ex % расстояние до метки
\leftmargin=\parindent % отступ слева
\rightmargin=0pt} % отступ справа
152. Наиболее гибкое окружение для создания собственных перечней.
⇒ \begin{list}{label}{decl}
label
→ метка пунктов списка;
decl
→ геометрические параметры списка.
\begin{list}{$\Rightarrow$}
{\leftmargin=22mm\labelwidth=20mm}
\item
\verb’\begin{list}{label}{decl}’
\item[\tt label\hfill$\to$]
метка пунктов списка;
\item[\tt decl\hfill$\to$]
геометрические параметры списка.
\end{list}
4.5
Горизонтальные промежутки
153. Стандартные горизонтальные промежутки. Команды \!, \:, \; только для формул.
Пробел отрицательный
Пробел отсутствует
Пробел тонкий
Пробел средний
Пробел толстый
Пробел обычный
Пробел в 1em
Пробел в 2em
Пробел $\vrule\!\vrule$ отриц.
Пробел \vrule\vruleотсутствует
Пробел \vrule\,\vruleтонкий
Пробел $\vrule\:\vrule$ средний
Пробел $\vrule\;\vrule$ толстый
Пробел \vrule\ \vruleобычный
Пробел \vrule\quad\vruleв 1em
Пробел \vrule\qquad\vruleв 2em

30 154. Вставка горизонтальных промежутков заданной длины.
Это ровно 1 см
Это ровно 10 пунктов
Это\hspace{1cm}ровно 1 см
Это\hspace{10pt}ровно 10 пунктов
155. Команды для правого и левого перекрытия текста.
Правое RLAP
перекрытие.
Левое
LLAP перекрытие.
Правое \rlap{RLAP} перекрытие.
Левое \llap{LLAP} перекрытие.
156. Горизонтальные промежутки могут быть фиксированной длины, растяжимыми и/или сжимаемыми. Опции plus␣p и minus␣m говорят, на сколько промежуток можно растянуть или сжать соответственно. Если опции не заданы, то полагается p = m = 0.
Это ровно
1
нерастяжимый сантиметр
Это ровно 1 растяжимый сантиметр
Это\hspace{1cm}ровно 1
нерастяжимый сантиметр
Это\hspace{1cm plus 1cm}ровно 1
растяжимый сантиметр
157. Вставка промежутков с заполнением.
проф. . . . . . . . . . . . . . . . /И. В. Анов/
проф. . . . . . . . . . ./И. В. Анов/
проф. . . . . . . . . . . . . . . . . . . . . . . . ./И. В. Анов/
A·················································· B
\hbox to 6cm {проф. \dotfill/И.В.Анов/}
проф. \hbox to 4cm {\dotfill/И.В.Анов/}
\hbox to \textwidth
{проф. \dotfill/И.В.Анов/}
\hbox to6cm{A\leaders\hbox{$\cdot$}\hfill B}
158. При печати бланков полезно определить команду для рисования линеек.
«
»
200
г.
\def\hrf#1{\hbox to#1{\hrulefill}}
<<\hrf{2em}>> \hrf{6em} 200\hrf{1em}г.
159. Единицы длины, которые понимает TEX. Размеры em и ex зависят от текущего выбран- ного шрифта. Правила перевода единиц приведены на стр.
51
\def\MYvrule{\rule{0.4pt}{1ex}}
\def\MYunit#1{\MYvrule{\hbox to#1{\hrulefill}}\MYvrule}
дюйм (inch)
сантиметр цицеро пика (pica)
миллиметр дидот-пункт большой пункт пункт (point)
100000 scaled points высота «ex»
ширина «em»
\MYunit{1in} дюйм (inch)
\MYunit{1cm} сантиметр
\MYunit{1cc} цицеро
\MYunit{1pc} пика (pica)
\MYunit{1mm} миллиметр
\MYunit{1dd} дидот-пункт
\MYunit{1bp} большой пункт
\MYunit{1pt} пункт (point)
\MYunit{100000sp} 100000 scaled points
\MYunit{1ex} высота <>
\MYunit{1em} ширина <>
160. Другие виды заполнителей, способных занять собой всё отведённое им место.
Линия
Верхняя скобка |
{z
}
Нижняя скобка z
}|
{
Точки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Левая стрелка ←−−−−−−−−−−−−−−−−−−−−−
Правая стрелка −−−−−−−−−−−−−−−−−−−−→
Линия \hrulefill
Верхняя скобка \upbracefill
Нижняя скобка \downbracefill
Точки \dotfill
Левая стрелка \leftarrowfill
Правая стрелка \rightarrowfill

31 4.6
Вертикальные промежутки
161. Разрывы строк внутри абзаца с добавлением промежутка и без.
Строку можно где угодно разорвать. И при этом сделать разрыв заданной величины.
Строку можно\\ где угодно разорвать.
Ипри этом\\[6pt]
сделать разрыв заданной величины.
162. Вертикальный промежуток между абзацами.
Внимание! Отступ между абзацами делается совсем. . .
. . . другой командой.
Внимание! Отступ между абзацами делается совсем\dots
\vspace{6pt}\dots другой командой.
163. Стандартные вертикальные промежутки. Команда \par эквивалентна пустой строке.
Предыдущая строка.
Обычный промежуток.
Малый промежуток.
Средний промежуток.
Большой промежуток.
Предыдущая строка.
\par Обычный промежуток.
\par\smallskip Малый промежуток.
\par\medskip Средний промежуток.
\par\bigskip Большой промежуток.
164. Горизонтальная линейка.
Абзацы можно отделять линией
Вот так.
Абзацы можно отделять линией
\medskip\hrule\medskip
Вот так.
165. Стильная горизонтальная линейка.
Горизонтальные линейки могут иметь заданную длину и толщину.
Вот так.
Горизонтальные линейки могут иметь заданную длину и толщину.
\medskip
\hrule width 3cm height 1pt
\vskip 1pt \hrule width 3cm
\medskip
Вот так.
4.7
Таблицы
166. Имитация табулятора.
Команда Назначение
\=
задать позицию
\kill убрать строку
\>
следующая позиция
\\
следующая строка
\\*
запретить разрыв
\’
выровнять вправо
\+
сдвиг всех позиций вправо
\- сдвиг всех позиций влево
\begin{tabbing}
Команда\quad \= Назначение \\
\verb’\=’
\> задать позицию \\
\verb’\kill’ \> убрать строку \\
\verb’\>’
\> следующая позиция \\
\verb’\\’
\> следующая строка \\
\verb’\\*’
\> запретить разрыв \\
\verb.\’.
\> выровнять вправо \\
\verb’\+’
\> сдвиг всех позиций вправо\\
\verb’\-’
\> сдвиг всех позиций влево \\
\end{tabbing}

32 167. Команды табулятора \+ и \- смещают все последующие строки.
Марш,
марш,
левой!
Марш,
марш,
правой!
\begin{tabbing}
\qquad\=\qquad\=\qquad\=\kill
\+Марш,\\ \+марш,\\ \+левой!
\-\-\-\\
\+Марш,\\ \+марш,\\ \+правой!\\
\end{tabbing}
168. Таблица с автоматическим определением ширины колонок. Каждая ячейка не может содержать более одной строки. Аргумент {||cll||} задаёт структуру колонок таблицы.
Название Применение
- дефис из-за γ-кванта
– en-тире стр. 3–7
— em-тире
Это — тире
− минус
−f(−x)
\begin{tabular}[t]{||c|ll||}
\hline
& Название & Применение \\
\hline
-
& дефис
& из-за $\gamma$-кванта \\
--
& en-тире & стр. 3--7 \\
--- & em-тире & Это --- тире \\
$-$ & минус
& $-f(-x)$ \\
\hline
\end{tabular}
169. Описатель p{w} задаёт колонку из многострочных ячеек шириной w. Содержимое каж- дой ячейки прижимается кверху.
Простые
Не простые
2, 3, 5, 7, 11,
13, 17, 19, 23,
29 4, 6, 8, 9, 10, 12, 14
\begin{tabular}[t]{|p{6em}|p{9em}|}
\hline
Простые & Не простые \\
\hline
2, 3, 5, 7, 11, 13, 17, 19, 23, 29 &
4, 6, 8, 9, 10, 12, 14 \\
\hline
\end{tabular}
170. Команда \multicolumn объединяет несколько колонок в пределах одной строки таблицы.
Описатели колонок
Описатель Назначение r
прижать вправо l
прижать влево c
выровнять по центру
|
вертикальная линия p{w}
выровнять вверх
@{x}
повтор текста x
\begin{tabular}{|c|l|}
\hline
\multicolumn{2}{|c|}{Описатели колонок}\\
\hline
Описатель & Назначение \\
\hline
\verb’r’
& прижать вправо\\
\verb’l’
& прижать влево\\
\verb’c’
& выровнять по центру\\
\verb’|’
& вертикальная линия\\
\verb’p{w}’ & выровнять вверх\\
\verb’@{x}’ & повтор текста x\\
\end{tabular}

33 171. В пакете array определены дополнительные описатели.
b{w}
колонка ширины w, с вертикаль- ным выравниванием вниз m{w}
колонка ширины w, с вертикаль- ным выравниванием по центру
>{x}
любые команды x, исполняемые перед элементом колонки
<{x}
любые команды x, исполняемые после элемента колонки
!{x}
аналогично @{x}, но не подавляет промежуток между колонками
\begin{tabular}[t]{|c|p{6cm}|}
\verb’b{w}’ & колонка ширины w,
свертикальным выравниванием вниз\\
\verb’m{w}’ & колонка ширины w,
свертикальным выравниванием по центру\\
\verb’>{x}’ & любые команды x,
исполняемые перед элементом колонки\\
\verb’<{x}’ & любые команды x,
исполняемые после элемента колонки\\
\verb’!{x}’ & аналогично \verb’@{x}’, но не подавляет промежуток между колонками\\
\hline
\end{tabular}
172. Описатели >{x} и <{x} позволяют создать колонку с математическим содержанием.
линейная O(x n
)
полиномиальная O(x n
)
экспоненциальная O(e x
)
\begin{tabular}[t]{r>{$}l<{$}}
линейная
& O(x^n)\\
полиномиальная
& O(x^n)\\
экспоненциальная & O(e^x)\\
\end{tabular}
173. Команда \cline позволяет отделить строки таблицы только в заданных колонках.
Окружения
М/Т
Перечни itemize enumerate
Т
description
Таблицы array
М
tabular
Т
tabbing
Т
\begin{tabular}[t]{|c|l|c|}
\hline
\multicolumn{2}{|c|}{Окружения} & М/Т \\
\hline
Перечни
& itemize
&
\\ \cline{2-2}
& enumerate
& Т \\ \cline{2-2}
& description &
\\
\hline
Таблицы
& array
& М \\ \cline{2-3}
& tabular
& Т \\ \cline{2-3}
& tabbing
& Т \\
\hline
\end{tabular}

34 174. Окружение minipage создаёт «подстраницу» заданной ширины.
Внутри minipage может находиться несколько абзацев. Они будут размещаться как на обычной странице.
Minipage можно ис- пользовать для размеще- ния рядом больших бло- ков.
Необязательный параметр вер- тикального выравнивания блоков:
[t] — вверх;
[b] — вниз;
[c] — по центру.
\noindent
\begin{minipage}[t]{44mm}\parindent=2em
Внутри minipage может находиться несколько абзацев.
Они будут размещаться как наобычной странице.\par
Minipage можно использовать для размещения рядом больших блоков.
\end{minipage}
\hfill
\begin{minipage}[t]{28mm}
Необязательный параметр вертикального выравнивания блоков:
\\[1ex][t]--- вверх;
\\[1ex][b]--- вниз;
\\[1ex][c]--- поцентру.
\end{minipage}
175. Набор текста в несколько колонок. Окружение multicols доступно при подключении пакета \usepackage{multicol}. Обязательный параметр {2} указывает число колонок.
Преамбула в одну колонку
Балансировка колонок по длине выполняется ав- томатически.
Ес- ли колонки слиш- ком узкие, то луч- ше сделать рваный правый край.
Columnseprule —
толщина линейки.
Columnsep —
зазор между ко- лонками.
\columnseprule=0.3pt\columnsep=24pt
\begin{multicols}{2}
[\textbf{Преамбула в одну колонку}]
Балансировка колонок подлине выполняется автоматически.
Если колонки слишком узкие, имеет смысл сделать рваный правый край.
\par Columnseprule--- толщина линейки.
\par Columnsep--- зазор между колонками.
\end{multicols}

35 4.8
Структура документа и оглавление
176. Команды секционирования документа. Если перед аргументом стоит *, то раздел не ну- меруется и не включается в оглавление. Нумеруемые разделы можно помечать командой
\label. Команда \chapter в стиле article не определена.
Часть I
Заголовок части
5
Заголовок раздела
В данном разделе речь пойдёт о
5.1
Подраздел
5.1.1
Под-подраздел
Параграф
Известно, что...
Подпараграф
Кстати,...
\part{Заголовок части}
%\chapter{Глава} % не определена в article
\section{Заголовок раздела}
В данном разделе речь пойдёт о...
\subsection{Подраздел}
\label{secExample}
\subsubsection{Под-подраздел}
\paragraph{Параграф}
Известно, что...
\subparagraph{Подпараграф}
Кстати,...
177. Команда \addcontentsline вставляет в оглавление текст заданного стиля.
результат — в примере
178
\addcontentsline{toc}{section}{Как раздел}
\addcontentsline{toc}{subsection}
{Как подраздел}
178. Оглавление генерируется из заголовков уровня не ниже subsubsection.
I
Заголовок части
35 5 Заголовок раздела
35 5.1 Подраздел
. . . . . . . . . . . 35 5.1.1
Под-подраздел
. . . . . 35
Как раздел
35
Как подраздел
. . . . . . . . . . . . 35
\tableofcontents
179. Стандартные заголовки. Эти команды можно переопределять.
Аннотация
Часть
Глава
Список литературы
Рис.
Таблица
Литература
Предметный указатель
Приложение
Содержание
Список иллюстраций
Список таблиц
\abstractname
\partname
\chaptername
\refname
\figurename
\tablename
\bibname
\indexname
\appendixname
\contentsname
\listfigurename
\listtablename

36 4.9
Листинги, программы, алгоритмы
180. Буквальное воспроизведение листингов программ — окружение verbatim.
main() {
printf("## %d ##", i);
}
\begin{verbatim}
main() {
printf("## %d ##", i);
}
\end{verbatim}
181. Буквальное воспроизведение строк со спецсимволами TEXа — команда \verb.
Команда \verb повторяет любые сим- волы, в том числе «^\{}$&#%_», вариант
$␣x^2␣$
выделяет пробелы.
Команда \verb’\verb’ повторяет любые символы, втом числе <<\verb|^\{}$&#%_|>>,
вариант \verb*’$ x^2 $’ выделяет пробелы.
182. Разрывы строк и пробелы повторяют форматирование исходного файла.
Похоже на текст, набранный с помощью печатной машинки, в который позже вписали
N
− k + 1 каких-то формул.
\obeylines\obeyspaces\tt
Похоже на текст, набранный с помощью печатной машинки, в который позже вписали
$N-k+1$ каких-то формул.
183. Окружение listing для буквального воспроизведения с нумерацией строк. Задаётся шаг нумерации и начальный номер. Пакет \usepackage{moreverb}.
1
constructor TFirstAnalyt.Create;
2
begin inherited Create;
4
DecimalSeparator:= ’.’;
InitClear;
6
Sel:= TmaList.Create;
ParamExample:= ’’;
8
end;
\begin{listing}[2]{1}
constructor TFirstAnalyt.Create;
begin inherited Create;
DecimalSeparator:= ’.’;
InitClear;
Sel:= TmaList.Create;
ParamExample:= ”;
end;
\end{listing}
184. Окружение listingcont продолжает ранее начатую нумерацию.
destructor TFirstAnalyt.Destroy;
10
begin
InitClear; {удалить всё}
12
inherited Destroy;
end;
\begin{listingcont}
destructor TFirstAnalyt.Destroy;
begin
InitClear; {удалить всё}
inherited Destroy;
end;
\end{listingcont}
185. Команда \listinginput выводит в виде листинга содержимое заданного файла. Полезно для распечатки программ. Пакет \usepackage{moreverb}.
1
unit Analyt1;
2
interface
3
uses
4
SysUtils, Graphics, Controls;
5
type
6
TFirstAnalyt = class (TCustomAnalyt)
\listinginput[1]{1}{Analyt1.pas}

37 186. Оформление алгоритмов в пакете \usepackage[noend]{algorithmic}. Автоматическое разбиение на строки, расстановка табуляций и проверка вложенности циклов. Необязатель- ный аргумент [1] задаёт шаг нумерации (если опущен, то нумерация не выводится).
Require: x, y;
Ensure: z = F (x, y);
1:
b := a; {инициализация}
2:
for i = 1, . . . , n do
3:
for all w
∈ W таких, что w > 0 do
4:
repeat
5:
a := a + 1;
6:
until a > 0;
7:
if a > 0 then
8:
while W
6= ∅ do
9:
W := W
− {a};
10:
else if a = 0 then
11:
loop
{бесконечный цикл}
12:
когда-нибудь выход;
13:
else
{при a < 0}
14:
a := 1;
\begin{algorithmic}[1]
\REQUIRE $x, y$;
\ENSURE $z = F(x,y)$;
\STATE $b := a$; \COMMENT{инициализация}
\FOR{$i=1,\dots,n$}
\FORALL{$w \in W$ таких, что $w>0$}
\REPEAT
\STATE $a:=a+1$;
\UNTIL{$a>0$};
\ENDFOR
\ENDFOR
\IF{$a>0$}
\WHILE{$W\neq\varnothing$}
\STATE $W := W-\{a\}$;
\ENDWHILE
\ELSIF{$a=0$}
\LOOP[бесконечный цикл]
\STATE когда-нибудь {\bf выход};
\ENDLOOP
\ELSE[при $a<0$]
\STATE $a:=1$;
\ENDIF
\end{algorithmic}
187. Русификация: тот же алгоритм после переопределения ключевых слов.
Вход: x, y;
Выход: z = F (x, y);
1:
b := a;
// инициализация
2:
для i = 1, . . . , n
3:
для всех w
∈ W таких, что w > 0 4:
повторять
5:
a := a + 1;
6:
пока a > 0;
7:
если a > 0 то
8:
пока W
6= ∅
9:
W := W
− {a};
10:
иначе если a = 0 то
11:
цикл
// бесконечный
12:
когда-нибудь выход;
13:
иначе
// при a < 0 14:
a := 1;
\def\algorithmicrequire{\textbf{Вход:}}
\def\algorithmicensure{\textbf{Выход:}}
\def\algorithmicif{\textbf{если}}
\def\algorithmicthen{\textbf{то}}
\def\algorithmicelse{\textbf{иначе}}
\def\algorithmicelsif{\textbf{иначе если}}
\def\algorithmicfor{\textbf{для}}
\def\algorithmicforall{\textbf{для всех}}
\def\algorithmicdo{}
\def\algorithmicwhile{\textbf{пока}}
\def\algorithmicrepeat{\textbf{повторять}}
\def\algorithmicuntil{\textbf{пока}}
\def\algorithmicloop{\textbf{цикл}}
% переопределение стиля комментариев
\def\algorithmiccomment#1{\quad// {\sl #1}}

38 4.10
Библиография
188. Список литературы оформляется окружением thebibliography.
Список литературы
[1] Кнут Д. Всё про TEX. — Протвино,
RDTEX, 1993.
[2] Львовский С.М. Набор и вёрстка в па- кете LATEX. — М., Космосинформ, 1994.
\begin{thebibliography}{0}
\bibitem{knuth93texbook}
КнутД. Всё про \TeX.
--- Протвино, RD\TeX, 1993.
\bibitem{lvovsky94latex} ЛьвовскийС.М.
Набор и вёрстка в пакете\LaTeX.
--- М., Космосинформ, 1994.
\end{thebibliography}
189. Для ссылок на литературу вместо \ref используют \cite.
в книгах [
1
,
2
], особенно в [
2
, с. 145]
в книгах\cite{knuth93texbook,lvovsky94latex},
особенно в\cite[с.145]{lvovsky94latex}
4.11
Сноски
190. Сноски.
Сноски
1
нумеруются автоматически или вручную
7 1
Печатаются внизу страницы.
7
Седьмая.
Сноски\footnote{%
Печатаются внизу страницы.
}
нумеруются автоматически или вручную\footnote[7]{Седьмая.}.
191. Пометки на полях.
Теорема.
Ого!
1 + 1 = 10.
Теорема.\marginpar{Ого!} $1+1=10$.
4.12
Ссылки, счётчики и автоматическая нумерация
192. Место, на которое надо сослаться, отмечается меткой \label. Ссылки могут быть на всё, что нумеруется автоматически.
См. подраздел
5.1
См. пункт перечня
2c
См. формулу (
1
).
См. теорему
1
на стр.
21
См.подраздел\ref{secExample}.
См.пункт перечня\ref{enCanRef}.
См.формулу(\ref{Ax=b}).
См.теорему\ref{thViet}
на стр.\pageref{thViet}.
193. Использование счётчиков для автоматической нумерации.
\newcounter{MYc}
\def\MYhyp{\addtocounter{MYc}{1}\par{\bf Гипотеза \arabic{MYc}:\\}}
Гипотеза 1:
Разделы и формулы нумеруются с помо- щью счётчиков.
Гипотеза 2:
Нумеровать можно не только формулы, но и что угодно.
\MYhyp
Разделы и формулы нумеруются спомощью счётчиков.
\MYhyp
Нумеровать можно не только формулы, но и что угодно.

39 194. Установка и вывод значения счётчика. Команды \asbuk и \Asbuk определяются при под- ключении пакета \usepackage[russian]{babel}.
Арабским числом: 23
Римским числом: xxiii, XXIII
БУКВОЙ: W, Ч
буквой: w, ч
\setcounter{MYc}{23}
Арабским числом: \arabic{MYc}
Римским числом: \roman{MYc}, \Roman{MYc}
БУКВОЙ: \Alph{MYc}, \Asbuk{MYc}
буквой: \alph{MYc}, \asbuk{MYc}
195. Определение счётчика \MYsub, подчинённого счётчику \MYc.
\newcounter{MYsub}[MYc]
\def\theMYsub{\arabic{MYc}.\arabic{MYsub}}
Команда \the hимя счётчикаi используется внутри команды \ref для генерации ссылки. Ко- манда \refstepcounter увеличивает счётчик на 1 и обнуляет все подчинённые ему.
23.0 23.1 24.0
\theMYsub
\refstepcounter{MYsub}\theMYsub
\label{MYcount}
\refstepcounter{MYc}\theMYsub
196. Генерация ссылки.
Когда мы вставили пометку MYcount,
счётчик был равен
23.1
Когда мы вставили пометку \verb’MYcount’,
счётчик был равен\ref{MYcount}.
197. Некоторые стандартные счётчики и их текущие значения.
section = 4
subsection = 4.12
subsubsection = 4.12.0
paragraph = 4.12.0.0
Страница, page = 39
Сноска, footnote = 0
Формула, equation = 9
section = \thesection subsection = \thesubsection subsubsection = \thesubsubsection paragraph = \theparagraph
Страница, page = \thepage
Сноска, footnote = \thefootnote
Формула, equation = \theequation
198. Переподчинение счётчиков. Теперь нумерация формул будет начинаться заново в каж- дом разделе.
\@addtoreset{equation}{section} % ТОЛЬКО В СТИЛЕВОМ ФАЙЛЕ !
Сравним с формулой (
1
)
Ax = b
(4.1)
Сравним с формулой(\ref{Ax=b})
\begin{equation}
Ax=b
\end{equation}
4.13
Определение собственных макрокоманд
199. Команда \TeX рисует эмблему, изобретённую Д. Кнутом (команды \kern и \lower зада- ют смещения по горизонтали и вертикали, единицы длины em и ex пропорциональны шриф- ту):
\def\TeX{T\kern-.1667em\lower.5ex\hbox{E}\kern -.125em X}
TEX
TEX
\TeX \LARGE\TeX

40 200. Новая команда \MYvrule отмечает абзацы линией толщиной 2pt:
\newlength{\MYwidth} % новый параметр длины
\def\MYvrule#1\par{
\par\noindent
\MYwidth=\textwidth\addtolength{\MYwidth}{-7pt}
\hbox{\vrule width 2pt\hspace{5pt}\parbox[t]{\MYwidth}{#1}}
}
С помощью новой команды можно отме- чать важные абзацы линией слева.
\MYvrule Спомощью новой команды можно отмечать важные абзацы линией слева.
201. Определение команд средствами LATEXа. \newcommand, в отличие от \def, выдаёт ошиб- ку, если команда с таким именем уже определена.
\newcommand{\kw}[1]{\tt #1}
% [1] - число аргументов
\newcommand{\df}[1]{$\langle\mbox{\small\it #1\/}\rangle$}
hIF i ::= IF hуслi THEN hблокi
\df{IF} ::= \kw{IF} \df{усл}
\kw{THEN} \df{блок}

41 5
Набор графики
5.1
Вставка изображений
202. Команда \includegraphics из пакета \usepackage{graphicx}. Вставляемая картинка ведёт себя как один большой символ.
Эмблема TEXа —
— лев, пере- жёвывающий цепочки литер. Изображение вставлено из графического файла формата
PostScript.
Эмблема \TeX а---
\includegraphics[height=16mm]{tex.eps}
--- лев, пережёвывающий цепочки литер.
Изображение вставлено изграфического файла формата PostScript.
203. Плавающие иллюстрации автоматически размещаются там, где для них хватает ме- ста. Необязательный параметр [bh] задаёт приоритетный список рекомендуемых способов размещения: h — в данном месте; t — вверху страницы; b — внизу страницы; p — на плава- ющей странице; H — только в данном месте.
Рисунок
1
может оказаться на те- кущей или следующей странице.
\begin{figure}[bh]
\noindent\centering{
\includegraphics[width=120mm]{curves.eps}
}
\caption{Ступенчатая функция потерь}
\label{figCurves}
\end{figure}
-5
-4
-3
-2
-1 0
1 2
3 4
5 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5
1   2   3   4


написать администратору сайта