Работа в системе LaTeX



         

Колонтитулы - часть 7


Команда \@oddhead, отвечающая за верхние колонтитулы на страницах с нечетными номерами, определена в стиле article (при условии, что была команда \pagestyle{headings}) так:

\newcommand{\@oddhead}{{\normalfont\slshape\rightmark}% \hfil\thepage}

Стало быть, верхние колонтитулы к нечетным страницам выглядят так: название текущего подраздела наклонным шрифтом — выключенное влево, номер страницы прямым шрифтом — выключенный вправо. Впрочем, если в текущем разделе команд \subsection еще не было, то вместо заглавия будет пустое место, так как \rightmark будет пуста (определение команды \sectionmark, данное выше, показывает, что при исполнении команды \section в текст вносится пустая правая пометка, и пустой она остается до первой команды \subsection).

Приведем пример переопределения команд наподобие \sectionmark. Если нам не нравится, что в правом колонтитуле иногда бывает пустое место, то можно попросить команду \section вносить в текст непустую правую пометку — то же заглавие раздела. Для этого напишем в преамбуле так:

\newcommand{\sectionmark}[1]{\markboth {\uppercase{\thesection\hspace{1em}#1}}% левая пометка {\uppercase{\thesection\hspace{1em}#1}}% правая пометка }% конец макроопределения

Теперь, если в разделе нет подразделов, то на правых страницах в верхнем колонтитуле будет также печататься заглавие текущего раздела. Оформление колонтитулов при этом будет стандартным. Если вы хотите еще и отойти от этого стандарта, то надо будет, вместо использования команды \pagestyle, напрямую переопределить команды типа \@oddhead и \@evenhead; надо думать, теперь вы найдете, как применить в этих определениях команды \leftmark и \rightmark.

Если в документе присутствует команда \pagestyle (с каким бы то ни было аргументом), то она отменит ваши переопределения команд типа \sectionmark. Поэтому все команды \pagestyle должны идти до ваших личных переопределений команд типа \@evenhead.

Если вы вообще не хотите, чтобы при исполнении, скажем, команды \subsection в текст вносились какие-либо пометки, то можно "отключить" команду \subsectionmark, переопределив ее на "ничего не делать":




Содержание  Назад  Вперед