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



         

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


Давайте научимся делать и это.

Чтобы передать в колонтитул какую-то информацию из текста, в LaTeX'е используются команды \markboth и \markright. Разберем, как они работают. Команда \markboth, требующая двух обязательных аргументов, запоминает пару " пометок" — два фрагмента текста (возможно, с TeX'овскими командами). Например, если мы скажем (где-нибудь между абзацами)

\markboth{Кот}{Пес}

то поместим между этими абзацами пару пометок: "левую пометку" Кот и "правую пометку" Пес. Сами по себе эти пометки никак не отражаются на печати. Однако же в определениях команд \@oddhead и ей подобных мы можем на эти пометки ссылаться. Именно, в этих определениях команда \leftmark дает левую пометку, а команда \rightmark — правую пометку. Например, если мы переопределим верхние колонтитулы как

\renewcommand{\@evenhead}{\leftmark\hfil} \renewcommand{\@oddhead}{\hfil\rightmark}

то, начиная с той страницы, на которую попали наши пометки, в левом верхнем колонтитуле будет стоять выключенное влево слово "Кот", а в правом — выключенное вправо слово " Пес"4). Кстати, если никаких пометок в тексте нет, то как \leftmark, так и \rightmark дают " пустой" текст.

До сих пор мы молчаливо предполагали, что на каждой странице присутствует только одна пара пометок. Что будет, если таких пар пометок попадет на страницу несколько? Ответ: команда \leftmark в этом случае означает левую пометку из самой верхней пары пометок, попавших на страницу, а команда \rightmark означает правую пометку из самой нижней пары пометок, попавших на данную страницу. С другой стороны, если на страницу вообще ни одна пара пометок не попала, то \leftmark и \rightmark означают соответственно левую и правую пометки из последней пары пометок, встретившихся до этого.

Поясним сказанное примером. Пусть пометки

\markboth{x}{y} и \markboth{z}{t}

попали (в указанном порядке) на страницу 1, на страницу 2 вообще никаких пометок не попало, на страницу 3 попали целые три пары пометок:




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