Опубликован: 07.02.2007 | Уровень: для всех | Доступ: платный
Лекция 3:

Набор текста

Диакритические знаки и прочее

Во многих языках используются буквы с дополнительными значками, размещающимися над или под буквой (они называются диакритическими знаками). Кроме того, в ряде языков, использующих латинский алфавит, есть специальные дополнительные буквы. В TeX'е имеются команды для набора таких букв из почти всех европейских языков. Команды для получения диакритических знаков собраны в нижеследующей таблице, где знаки проставлены, для примера, при букве e.

\begin{tabbing}\label{accents}
Набрано\quad \= Вышло  \hspace{2cm}\= Набрано\quad \=
Вышло \\[6pt]
\verb"\`e"\index{`@\cs(`)}\> \a`{e}
       \>\verb"\'e"\index{'@\cs(')}\>\a'{e} \\
\verb"\^e"\index{^@{\ttfamily\char`\\\char`\^}}\>\^e
       \>\verb"\~e"\index{~@{\ttfamily\char`\\\char`\~}}\> \~e\\
\verb"\=e"\index{=@\cs(=)}\> \a={e}
       \>\verb"\.e"\index{.@\cs(.)}\> \.e\\
\verb"\u{e}"\index{u@\cs(u)}\> \u e
       \> \verb"\v{e}"\index{v@\cs(v)}\> \v e\\
\verb"\H{e}"\index{H@\cs(H)}\> \H e
       \> \verb|\"e|\index{""@\cs("")}\> \"e \\
\verb"\c{e}"\index{c@\cs(c)}\> \c e
       \> \verb"\d{e}"\index{d@\cs(d)}\> \d e\\
\verb"\b{e}"\index{b@\cs(b)}\> \b e
\>\verb"\r{e}"\index{r@\cs(r)}\> \r e\\
        \verb"\t oo"\index{t@\cs(t)}\> \t oo
\end{tabbing}

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


Обратите внимание на команды \i и \j в этой таблице: они нужны для того, чтобы ставить диакритические знаки над буквами i и j. Если просто сказать, допустим, \=i, то получится \=i, а это не то, что требуется. Правильно писать \=\i. Вот несколько примеров.

Ch\'erie, \c{c}a ne me pla\^\i t pas!
G\"otterd\"ammerung 
!`Besa me mucho
!
Ch\'erie, \c{c}a ne me 
pla\^\i t pas!
G\"otterd\"ammerung 
!`Besa me mucho!

Для набора обычных русских текстов из всего этого великолепия нужны только две команды: \' (чтобы ставить ударения) и \" (для буквы ё, если в вашей русификации LaTeX'а для нее не отведено особого символа).

Команды \c, \' и т.д. имеют один обязательный аргумент — букву, над (или под) которой надо ставить диакритический знак. Читатель может заметить противоречие со сказанным на : ведь обязательный аргумент должен быть заключен в фигурные скобки, а в нашей таблице в записях вроде \`e или \"e: фигурных скобок нет. На самом деле противоречия нет, просто ранее было сказано не все: если у LaTeX'овской команды предусмотрен один обязательный аргумент и в исходном тексте после имени команды непосредственно следует буква, то в качестве аргумента будет воспринята именно эта буква . Так что можно, в принципе, не ставить букву в фигурные скобки и при командах наподобие \c или \u (но психологически приятнее, когда слово, которое на печати выйдет без пробелов, не будет содержать пробелов и в исходном тексте):

La fa\c{c}ade est la fa\c cade
.
La fa\c{c}ade est la fa\c cade.

Команды из второй таблицы аргументов не требуют; что же касается значков !` и ?`, то это вообще не команды, а лигатуры .

Над буквами в математических формулах также приходится ставить надстрочные знаки, но описанные в настоящем разделе команды для этого непригодны; команды, делающие это в формулах, описаны в разд. "Надстрочные знаки".

В заключение нашего обсуждения диакритических знаков отметим вот что. Хотя описанные в этом разделе команды дают возможность набирать все знаки алфавита почти любого европейского языка, это еще не значит, что вы так просто сможете набирать длинные тексты на этих языках. Дело в том, что при отсутствии ориентированной на соответствующий язык таблицы переносов TeX будет, скорее всего, переносить слова в этих текстах неправильно (а слова с диакритическими знаками перенести вообще не сможет — см. разд."Параграф"). Таблица переносов для русского языка в любой русификации LaTeX'а имеется, а для английского языка такая таблица присутствует в TeX'е изначально. Если же вам придется набирать хотя бы абзац текста на каком-то другом языке, а соответствующей таблицы переносов у вас нет, то лучше переключиться на режим, в котором переносы вообще запрещены (как это сделать, будет рассказано в разд. "Параграф" этой лекции). Можно также попробовать воспользоваться стилевым пакетом babel, помогающим набирать тексты с правильными переносами на разных языках. См. приложение E.

Смена шрифтов в тексте

В "Элементарное введение" мы уже сталкивались с командами, изменяющими текущий шрифт. Сейчас мы рассмотрим их более подробно, но начнем с предупреждения, которое не требуется полиграфистам, но не повредит остальным читателям:

Не увлекайтесь переключением шрифтов! Чем меньше различных видов шрифта использовано в тексте, тем легче его читать и тем красивее он выглядит.

Простые средства

Обычно шрифт, отличный от используемого в основной части текста, применяется для выделения каких-то частей этого текста. Например, шрифтом выделяют заголовки разделов; по этому поводу вам беспокоиться незачем, поскольку для таких выделений LaTeX выбирает шрифт автоматически (если, разумеется, вы оформляете разделы текста с помощью команд, описываемых в следующей лекции, а не пытаетесь сделать это вручную).

Но может потребоваться выделить шрифтом не заголовок, который LaTeX делает сам, а какую-то выбранную вами часть текста — скажем, слово, на которое вы хотите обратить внимание читателя. Например, так выделено слово меньше в нашем предупреждении (и в этой фразе). Для этого использована команда \emph, аргументом которой служит выделяемое слово:

Например, так выделено слово \emph{меньше} в...

Выделяемое слово набирается курсивом, если текущий шрифт прямой, и прямым шрифтом, если текущий шрифт наклонный. Это полезно, так как в некоторых ситуациях (в заголовках, колонтитулах, в текстах " теорем" и т.п.), LaTeX выбирает шрифт за вас, и потому рекомендуется для выделения текста использовать в первую очередь именно эту команду.

Но можно указать шрифт и явно. Команда \textit набирает свой аргумент курсивом, так что в обычном тексте \textit{слово} неотличимо от \emph{слово}. Команда \textsl набирает свой аргумент наклонным шрифтом (обратите внимание на разницу между этим шрифтом и курсивом); команда \textbfполужирным шрифтом. Есть еще команда \texttt, которая набирает свой аргумент шрифтом "типа пишушей машинки". В этом шрифте все буквы имеют одинаковую ширину (как часто бывает на экране компьютера), и потому его часто используют для изображения программ, команд и сообщений операционной системы и т.п. В этой книге такой шрифт используется в примерах TeX'овских исходных текстов. Чтобы получить шрифт без засечек, надо воспользоваться командой \textsf. Шрифт "капитель", в котором строчные буквы представляют собой уменьшенные прописные}, можно получить с помощью команды \textsc. Эти два шрифта обычно используются не для выделений в тексте, а для заголовков, подписей к рисункам и таблицам и др.

Вот, пожалуй, и все употребительные команды переключения шрифтов. Еще есть команда \textup, которая набирает свой аргумент прямым шрифтом (внутри наклонного или курсивного текста); часто ее применяют, чтобы набрать знаки препинания (скобки и др.) прямым шрифтом:

\textit{Рядом с $f(x)$
\textup{(}значением функции
$f$ в точке $x$\textup{)}
лучше использовать прямые
скобки (а не курсивные)}
.
\textit{Рядом с $f(x)$
\textup{(}значением функции
$f$ в точке $x$\textup{)}
лучше использовать прямые
скобки (а не курсивные)}.

Теперь о размерах шрифтов. Команды изменения размера (полиграфисты бы сказали "кегля") указаны ниже. Такая команда (без аргументов) ставится в том месте, где нужно сменить размер шрифта, и действует до тех пор, пока размер не сменят вновь или не кончится группа.

Когда одно из {\scriptsize слов}
набрано шрифтом другого кегля, это
выглядит плохо.

Реальный размер шрифтов, задаваемых командами \large, \small и т.п., зависит от класса документа и классовых опций . В стандартных классах с основным шрифтом кегля 12 команды \huge и \Huge задают один и тот же размер (кегль 25).

Обратите внимание, что команды изменения размера текстового шрифта меняют и размер букв в формулах. Меняется и расстояние между строками по вертикали, если только не сделать одной распространенной ошибки. Если вы набрали шрифтом измененного размера (скажем, \small или \footnotesize ) целый абзац, то в момент, когда TeX видит пустую строку (или команду \par —, этот шрифт не должен быть еще переключен на обычный, иначе интервалы между строками получатся неправильные. Вот пример того, как надо и как не надо делать:

{\footnotesize Мы закрываем
группу и возвращаемся к обычному
шрифту только после пустой
строки, завершающей абзац.

}
Вот шрифт обычного размера
.
{\footnotesize
Мы закрываем
группу и возвращаемся к обычному
шрифту только после пустой
строки, завершающей абзац.

}
Вот шрифт обычного размера.
{\footnotesize
Здесь мы вернулись к обычному
шрифту раньше времени, и
межстрочные интервалы
оказались слишком велики.}

Вот шрифт обычного размера
.
{\footnotesize
Здесь мы вернулись к обычному
шрифту раньше времени, и
межстрочные интервалы
оказались слишком велики.
}

Вот шрифт обычного размера.

Для любознательных объясним, откуда берется этот эффект. Расчет расстояний между строками происходит только после того, как абзац обработан. Поэтому, если TeX набирал абзац во время действия, скажем, команды \small, а команду "сверстать абзац" (например, пустую строку) увидел тогда, когда действие команды \small уже кончилось, то между строками, набранными мелким шрифтом, будут установлены те же расстояния, как между строками, набранными шрифтом обычного размера.

Нина Казачек
Нина Казачек
Василий Майоров
Василий Майоров
Алина Вадяева
Алина Вадяева
Россия
Юлия Адамовская
Юлия Адамовская
Украина, Славянск