Date Редакция Категория comp Теги LaTeX / верстка

Изменить шрифт, границы и порядок расположения элементов "шапки" документа, таких как \title, \author, \date можно, переопределив команду \maketitle, которая расставляет эти элементы в документе.

Рассмотрим, как это делается на примере простейшего документа стиля article

\documentclass{article}
\title{Title}
\author{A.~U.~Thor}
\begin{document}
\maketitle

Text, text, text...
\end{document}

Результат выглядит так

article_title.png

Теперь, переопределим \maketitle

\documentclass{article}
\makeatletter
\def\maketitle{
\textbf{\@title}
\par\textit{\@author}
\par}
\makeatother

\title{Title}
\author{A.~U.~Thor}

\begin{document}
\maketitle

Text, text, text...
\end{document}

Собственно переопределение выполняется командой \def\maketitle{...}. Команды \makeatletter и \makeatother нужны для работы с внутренними командами LaTeX'a, содержащими специальный символ '@'. Первая, судя по названию, превращает '@' (at) в обычную букву, вторая играет роль закрывающей скобки -- после нее '@' снова становится специальным символом. Команды переопределения означают, что заголовок (\@title) будет выполнен полужирным шрифтом (при этом размер шрифта будет тот, который по умолчанию принят в документе), затем с новой строки будут помещены данные об авторе (\@author), выделенные курсивом, и сделан еще один разрыв строки между заголовком и основным текстом.

Результат:

article_mytitle.png

\def является низкоуровневой командой, относящейся еще к TeX'у. Однако точно также можно переопределить параметры \maketitle и при помощи LaTeX'овской \renewcommand

\makeatletter
\renewcommand{\@maketitle}{
\textbf{\@title}
\par\textit{\@author}
\par}
\makeatother


Комментарии

comments powered by Disqus