> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/ru/formatirovanie/02-headers-and-footers.md).

# Колонтитулы

## Введение и обзор

Эта статья демонстрирует, как изменять верхние и нижние колонтитулы документа с помощью [пакета fancyhdr](https://ctan.org/pkg/fancyhdr?lang=en). Ещё один вариант настройки верхних и нижних колонтитулов, рассмотренный в сопутствующей статье, [*Как LaTeX верстает верхние и нижние колонтитулы?*](/latex/ru/podrobnye-stati/23-how-does-latex-typeset-headers-and-footers.md), — глубже изучить код LaTeX, чтобы определить новые стили страниц или переопределить соответствующие низкоуровневые команды.

Здесь мы начнём с обзора некоторых базовых возможностей LaTeX, которые определяют используемые в документе верхние и нижние колонтитулы:

* [классах документов](#document-classes)
* [Стили страниц LaTeX](#latex-page-styles)

Если вы хотите пропустить вводный материал, перейдите к [разделу о `fancyhdr` пакет](#using-the-fancyhdr-package). Как уже отмечалось, гораздо более подробные технические сведения содержатся в сопутствующей статье [*Как LaTeX верстает верхние и нижние колонтитулы?*](/latex/ru/podrobnye-stati/23-how-does-latex-typeset-headers-and-footers.md) , где исследуются и объясняются низкоуровневые, основанные на маркерах механизмы, используемые движками TeX для создания верхних и нижних колонтитулов — и почему нужна команда `\mark` .

### Классы документов LaTeX

Разные типы документов LaTeX создаются с использованием *классах документов*; например, LaTeX предоставляет ряд стандартных классов:

* `книга`
* `отчёт`
* `статью`
* `letter`

которые используются через `\documentclass` команду:

```latex
\documentclass[⟨options⟩]{⟨class⟩}
```

где:

* `⟨class⟩` может быть одним из стандартных типов (`книга`, `отчёт`, `статью`, `letter`) или одним [предложенным частными лицами и организациями](https://www.ctan.org/topic/class).
* `⟨options⟩` — это настройки, используемые для конфигурации конкретного экземпляра документа `⟨class⟩`. Доступные `⟨options⟩` зависят от `⟨class⟩` , который используется.

#### Документы с одной или двумя сторонами

Если класс документа LaTeX поддерживает разные макеты для левых страниц (чётные номера страниц) и правых страниц (нечётные номера страниц), то верхние и нижние колонтитулы документа обычно различаются на левых и правых страницах. Значения по умолчанию для стандартных классов документов:

* `книга`: двусторонний
* `статью` и `отчёт`: односторонний, но может стать двусторонним при использовании опции `twoside`; например:

```latex
\documentclass[twoside]{article}
```

или

```latex
\documentclass[twoside]{report}
```

#### Стандартные ⟨options⟩ классов документов

LaTeX применяет набор значений по умолчанию `⟨options⟩` к каждому из стандартных классов документов:

* `статью`: по умолчанию `⟨options⟩` вошли `letterpaper,10pt,oneside,onecolumn,final`
* `отчёт`: по умолчанию `⟨options⟩` вошли `letterpaper,10pt,oneside,onecolumn,final,openany`
* `книга`: по умолчанию `⟨options⟩` вошли `letterpaper,10pt,twoside,onecolumn,final,openright`
* `letter`: по умолчанию `⟨options⟩` вошли `letterpaper,10pt,oneside,onecolumn,final`

Классы документов также предоставляют команды, которые позволяют пользователям структурировать документы в логические разделы, такие как части, главы, разделы, подразделы и так далее. Как и следовало ожидать, `книга` класс обладает богатым набором команд структурирования документа.

### Стили страниц LaTeX

В LaTeX формат верхних и нижних колонтитулов документа по умолчанию определяется используемым *стилем страницы* . LaTeX предоставляет несколько предопределённых стилей страниц:

* `пусто`: без верхних или нижних колонтитулов на страницах
* `plain`: без верхних колонтитулов, нижние колонтитулы состоят из номера страницы, расположенного по центру
* `headings`: без нижних колонтитулов, верхние колонтитулы содержат информацию, специфичную для класса, и номер страницы
* `myheadings`: без нижних колонтитулов, верхние колонтитулы содержат номер страницы и информацию, заданную пользователем

#### Стили страниц по умолчанию стандартных классов документов

Если пользователь не указал иное, стандартные классы документов применяют стиль страницы по умолчанию:

* окружения `статью` и `отчёт` классы используют `plain`
* окружения `книга` класс использует `headings`

#### Настройка стилей страниц

Базовый LaTeX предоставляет две команды для изменения (задания) стиля страницы:

* `\pagestyle{⟨style⟩}`: задаёт стиль текущей страницы и всех последующих страниц как `⟨style⟩`
* `\thispagestyle{⟨style⟩}`: задаёт стиль только текущей страницы как `⟨style⟩`

Стиль нумерации страниц задаётся командой `\pagenumbering{⟨numberstyle⟩}`; например, `\pagenumbering{roman}` печатает номера страниц строчными римскими цифрами: i, ii, iii...

### Разметка страницы LaTeX

Поскольку верхние и нижние колонтитулы являются частью общей компоновки/дизайна страницы, полезно немного лучше понять модель разметки страницы в LaTeX; следующие статьи Overleaf могут быть полезны:

* для введения в разметку страницы LaTeX статья Overleaf [Размер страницы и поля](/latex/ru/formatirovanie/07-page-size-and-margins.md) демонстрирует, как использовать [**`geometry`** пакет](https://ctan.org/pkg/geometry?lang=en);
* если вам нужны более подробные сведения, мы рекомендуем статью [Визуальное руководство по параметрам разметки страницы LaTeX](/latex/ru/podrobnye-stati/04-a-visual-guide-to-latex-s-page-layout-parameters.md).

### Верхние и нижние колонтитулы в стандартных классах документов и стилях страниц LaTeX

Как уже отмечалось, LaTeX предоставляет несколько [встроенных стилей страниц](#latex-page-styles) используемых по умолчанию для стандартных классов документов. Следующие короткие примеры демонстрируют стандартные верхние и нижние колонтитулы, создаваемые стандартными классами документов с использованием стиля по умолчанию LaTeX `⟨options⟩` для каждого класса.

#### Стандартные верхние и нижние колонтитулы класса article по умолчанию

```latex
\documentclass{article}
% Выберите удобно небольшой размер страницы
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=10cm]{geometry}
\usepackage{lipsum}% для фиктивного текста
\title{Пример класса article}
\author{Overleaf}
\begin{document}
\maketitle

\section{В начале...}
\lipsum[2]

\section{Ещё один раздел}
\lipsum[1]

\section{Ещё один}
\lipsum[1]
```

[Откройте этот **`статью`** пример класса в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=An+article+class+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D10cm%5D%7Bgeometry%7D%0A%5Cusepackage%7Blipsum%7D%25+for+some+dummy+text%0A%5Ctitle%7BAn+article+class+example%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cmaketitle%0A%0A%5Csection%7BIn+the+beginning...%7D%0A%5Clipsum%5B2%5D%0A%0A%5Csection%7BAnother+section%7D%0A%5Clipsum%5B1%5D%0A%0A%5Csection%7BYet+another%7D%0A%5Clipsum%5B1%5D%0A%5Cend%7Bdocument%7D)

#### Стандартные верхние и нижние колонтитулы класса report по умолчанию

```latex
\documentclass{report}
% Выберите удобно небольшой размер страницы
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=10cm]{geometry}
\usepackage{lipsum}% для фиктивного текста
\title{Пример класса report}
\author{Overleaf}
\begin{document}
\maketitle
\chapter{Один}
\section{В начале...}
\lipsum[2]

\section{Ещё один раздел}
\lipsum[1]

\section{Ещё один}
\lipsum[1]
```

[Откройте этот **`отчёт`** пример класса в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=A+report+class+example\&snip=%5Cdocumentclass%7Breport%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D10cm%5D%7Bgeometry%7D%0A%5Cusepackage%7Blipsum%7D%25+for+some+dummy+text%0A%5Ctitle%7BA+report+class+example%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cmaketitle%0A%5Cchapter%7BOne%7D%0A%5Csection%7BIn+the+beginning...%7D%0A%5Clipsum%5B2%5D%0A%0A%5Csection%7BAnother+section%7D%0A%5Clipsum%5B1%5D%0A%0A%5Csection%7BYet+another%7D%0A%5Clipsum%5B1%5D%0A%5Cend%7Bdocument%7D)

#### Стандартные верхние и нижние колонтитулы класса book по умолчанию

```latex
\documentclass{book}
% Выберите удобно небольшой размер страницы
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=10cm]{geometry}
\usepackage{lipsum}% для фиктивного текста
\title{Мемуары пользователя \TeX{}}
\author{Overleaf}
\begin{document}

\frontmatter
\maketitle
Это вводная часть, в которой используются римские цифры.

\mainmatter
\chapter{С чего мне начать}
\lipsum[4]

\section{В начале...}
\lipsum[1]

\section{Ещё один раздел}
\lipsum[1]

\chapter{Что я помню}

\section{О, и ещё один раздел}
\lipsum[1]
```

[Откройте этот **`книга`** пример класса в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=A+book+class+example\&snip=%5Cdocumentclass%7Bbook%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D10cm%5D%7Bgeometry%7D%0A%5Cusepackage%7Blipsum%7D%25+for+some+dummy+text%0A%5Ctitle%7BMemoirs+of+a+%5CTeX%7B%7D+user%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cfrontmatter%0A%5Cmaketitle%0AThis+is+frontmatter+which+uses+Roman+numerals.%0A%0A%5Cmainmatter%0A%5Cchapter%7BWhere+do+I+start%7D%0A%5Clipsum%5B4%5D%0A%0A%5Csection%7BIn+the+beginning...%7D%0A%5Clipsum%5B1%5D%0A%0A%5Csection%7BYet+another+section%7D%0A%5Clipsum%5B1%5D%0A%0A%5Cchapter%7BThings+I+remember%7D%0A%0A%5Csection%7BOh+and+a+further+section%7D%0A%5Clipsum%5B1%5D%0A%5Cend%7Bdocument%7D)

### Изменение верхних и нижних колонтитулов для «нестандартных» классов документов LaTeX

Пакеты/команды, необходимые для изменения верхних и нижних колонтитулов, могут различаться в зависимости от используемого класса документа; например, [в FAQ по TeX](https://texfaq.org/FAQ-fancyhdr#:~:text=The%20scrlayer%2Dscrpage%20package%20provides,and%20has%20several%20predefined%20styles) отмечено использование [scrlayer-scrpage](https://ctan.org/pkg/scrlayer-scrpage?lang=en) пакета вместо [fancyhdr](https://ctan.org/pkg/fancyhdr?lang=en), для лучшей интеграции с [классами документов KOMA-script](https://ctan.org/pkg/koma-script). Кроме того, [класс документов memoir](https://ctan.org/pkg/memoir?lang=en) содержит собственные средства (команды пользователя) для изменения верхних и нижних колонтитулов.

## Использование пакета fancyhdr

Чтобы подключить `fancyhdr` пакет, добавьте следующую строку в преамбулу документа:

```latex
\usepackage[⟨options⟩]{fancyhdr}
```

где `⟨options⟩` объясняются в [документация пакета](http://mirrors.ctan.org/macros/latex/contrib/fancyhdr/fancyhdr.pdf).

### Структура верхних и нижних колонтитулов fancyhdr

Следующая диаграмма суммирует общую структуру верхних и нижних колонтитулов, определяемую `fancyhdr` для двустороннего документа:

* верхние и нижние колонтитулы могут содержать разное содержимое на левых (чётных) и правых (нечётных) страницах
* верхние и нижние колонтитулы структурированы в три «зоны»
  * **Л***евая*
  * **Ц***ентр*
  * **R***П*
* верхние и нижние колонтитулы могут содержать необязательную линию

В **Л** зоне содержимое верстается по левому краю; в **Ц** зоне оно центрируется, а в **R** зоне оно выравнивается по правому краю.

![Диаграмма, показывающая структуру верхних и нижних колонтитулов fancyhdr](/files/61e567d893bdae52d30be92f5b8d6eb323a9e243)

Команды, предоставляемые `fancyhdr` используют однобуквенные сокращения, называемые «координатами», для обозначения конкретных зон верхних и нижних колонтитулов и расположения на странице:

* **`Н`** или **`Ч`**: чтобы указать \*\*`Н`\*\*нечётные или \*\*`Ч`\*\*чётные страницы
* **`H`** или **`В`**: чтобы обозначить \*\*`H`\*\*верхний колонтитул или \*\*`В`\*\*нижний колонтитул
* **`Л`**, **`Ц`** или **`R`**: для \*\*`Л`\*\*левой, \*\*`Ц`\*\*центральной и \*\*`R`\*\*правой «зоны» верхнего или нижнего колонтитула

### Введение в команды

В этом разделе рассматриваются несколько `fancyhdr` команд, используемых для определения содержимого верхних и нижних колонтитулов:

* `\fancyhead[*locations*]{*content*}`
* `\fancyfoot[*locations*]{*content*}`
* `\fancyhf[*locations*]{*content*}`

Каждая из этих команд использует «координаты» для определения `*locations*` где `*content*` должно появляться. В зависимости от используемой команды, может потребоваться (до) 2 или (до) 3 координаты, чтобы полностью указать нужное `*locations*`.

#### Команды, использующие до 2 координат

Следующие команды требуют до 2 координат, чтобы указать конкретные позиции в верхнем или нижнем колонтитуле:

* `\fancyhead[*locations*]{*content*}`: предполагает, `**В**`ерхнюю координату
* `\fancyfoot[*locations*]{*content*}`: предполагает, `**Н**`ижнюю координату

где `*locations*` — это необязательный список позиций, разделённых запятыми, заданный 1 или 2 координатами, в которых размещается `*content*`.

**Пример двустороннего документа**

Следующий пример взят из `fancyhdr` документации:

```latex
\documentclass{book}
\usepackage[paperheight=16cm, paperwidth=12cm,% Установить высоту и ширину бумаги
includehead,
nomarginpar,% Мы не хотим никаких заметок на полях
textwidth=10cm,% Установить \textwidth в 10 см
headheight=10mm,% Установить \headheight в 10 мм
]{geometry}
\usepackage{fancyhdr}
\begin{document}
% Установить стиль страницы на "fancy"...
\pagestyle{fancy}
%... затем настроить его.
\fancyhead{} % очистить все поля верхнего колонтитула
\fancyhead[RO,LE]{\textbf{Показатели новых выпускников}}
\fancyfoot{} % очистить все поля нижнего колонтитула
\fancyfoot[LE,RO]{\thepage}
\fancyfoot[LO,CE]{От: К. Грант}
\fancyfoot[CO,RE]{Кому: Дин А. Смит}
% Некоторое содержимое:
Это страница 1.\newpage
Это страница 2.
\end{document}
```

[Откройте этот `fancyhdr` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=fancyhdr+package+example\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D10mm%2C%25+Set+%5Cheadheight+to+10mm%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Set+the+page+style+to+%22fancy%22...%0A%5Cpagestyle%7Bfancy%7D%0A%25...+then+configure+it.%0A%5Cfancyhead%7B%7D+%25+clear+all+header+fields%0A%5Cfancyhead%5BRO%2CLE%5D%7B%5Ctextbf%7BThe+performance+of+new+graduates%7D%7D%0A%5Cfancyfoot%7B%7D+%25+clear+all+footer+fields%0A%5Cfancyfoot%5BLE%2CRO%5D%7B%5Cthepage%7D%0A%5Cfancyfoot%5BLO%2CCE%5D%7BFrom%3A+K.+Grant%7D%0A%5Cfancyfoot%5BCO%2CRE%5D%7BTo%3A+Dean+A.+Smith%7D%0A%25+Some+content%3A%0AThis+is+page+1.%5Cnewpage%0AThis+is+page+2.%0A%5Cend%7Bdocument%7D)

Следующая иллюстрация показывает результат, полученный этим примером:

![Пример двустороннего документа, созданный с помощью пакета fancyhdr для LaTeX](/files/f43af2ce5cbfeed0f085ce249f25c312225eaf61)

**Примечания по используемым командам**

* **`\fancyhead{}`**: очищает настройки верхних колонтитулов
* **`\fancyfoot{}`**: очищает настройки нижних колонтитулов
* **`\fancyhead[RO,LE]{\textbf{Показатели новых выпускников}}`**: использует координаты верхнего колонтитула **`RO`** (\*\*`R`**П**`Н`**нечётная) и `LE` (**`Л`**евая**`Ч`чётная) для размещения содержимого `\textbf{Показатели новых выпускников}`
* **`\fancyfoot[LE,RO]{\thepage}`**: использует координаты нижнего колонтитула **`LE`** (\*\*`Л`**евая**`Ч`**чётная) и `RO` (**`R`**П**`Н`нечётная) для размещения номера страницы, выводимого `\thepage`
* **`\fancyfoot[LO,CE]{От: К. Грант}`**: использует координаты нижнего колонтитула **`LO`** (\*\*`Л`**евая**`Н`**нечётная) и `CE` (**`Ц`**ентр**`Ч`чётная) для размещения содержимого `От: К. Грант`
* **`\fancyfoot[CO,RE]{Кому: Дин А. Смит}`**: использует координаты нижнего колонтитула **`CO`** (\*\*`Ц`**ентр**`Н`**нечётная) и `RE` (**`R`**П**`Ч`чётная) для размещения содержимого `Кому: Дин А. Смит`

**Односторонние и двусторонние документы**

Это [диаграмма выше](#hfstructure) показывает структуру верхних и нижних колонтитулов для двустороннего документа, такого как `книга` класс, или `статью`/`отчёт` классы, загружаемые с использованием опции `twoside`.

**Примеры односторонних документов**

Для *односторонние* документы, основанные на `статью` или `отчёт` классах, все страницы, по сути, являются правыми страницами, поэтому «координаты» для `**Ч**`ётных страниц не применимы. Нам также не *нуждаются* нужно указывать `**Н**` координату и можно использовать одно `**Л**`, `**Ц**` или `**П**` значение:

```latex
\documentclass{article}
\usepackage[paperheight=16cm, paperwidth=12cm,% Установить высоту и ширину бумаги
includehead,
nomarginpar,% Мы не хотим никаких заметок на полях
textwidth=10cm,% Установить \textwidth в 10 см
headheight=10mm,% Установить \headheight в 10 мм
]{geometry}
\usepackage{fancyhdr}
\begin{document}
% Установить стиль страницы на "fancy"...
\pagestyle{fancy}
\title{Односторонний документ}
\author{Overleaf}
\date{Август 2022}
\fancyhf{} % очистить существующие записи верхнего/нижнего колонтитула
% Нам не нужно указывать координату O
\fancyhead[R]{Привет}
\fancyfoot[L]{\thepage}
\maketitle
\section{Introduction}
Некоторое содержимое.
\newpage
\section{Продолжение...}
\end{document}
```

[Откройте этот `fancyhdr` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Single-sided+fancyhdr+package+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D10mm%2C%25+Set+%5Cheadheight+to+10mm%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Set+the+page+style+to+%22fancy%22...%0A%5Cpagestyle%7Bfancy%7D%0A%5Ctitle%7BSingle-sided+document%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cdate%7BAugust+2022%7D%0A%5Cfancyhf%7B%7D+%25+clear+existing+header%2Ffooter+entries%0A%25+We+don%27t+need+to+specify+the+O+coordinate%0A%5Cfancyhead%5BR%5D%7BHello%7D%0A%5Cfancyfoot%5BL%5D%7B%5Cthepage%7D%0A%5Cmaketitle%0A%5Csection%7BIntroduction%7D%0ASome+content.%0A%5Cnewpage%0A%5Csection%7BContinued...%7D%0A%5Cend%7Bdocument%7D)

Это `fancyhdr` пакет выдаёт предупреждение, если вы пытаетесь указать верхние или нижние колонтитулы, используя `**Ч**` координату в односторонних документах:

```latex
\documentclass{article}
\usepackage[paperheight=16cm, paperwidth=12cm,% Установить высоту и ширину бумаги
includehead,
nomarginpar,% Мы не хотим никаких заметок на полях
textwidth=10cm,% Установить \textwidth в 10 см
headheight=10mm,% Установить \headheight в 10 мм
]{geometry}
\usepackage{fancyhdr}
\begin{document}
% Установить стиль страницы на "fancy"...
\pagestyle{fancy}
\title{Предупреждение без twoside}
\author{Overleaf}
\date{Июль 2022}
\fancyhead[E]{Привет}% Это вызывает предупреждение!
\fancyfoot[E]{\thepage}% Это вызывает предупреждение!
\maketitle
\section{Introduction}
Некоторое содержимое.
\newpage
\section{Продолжение...}
\end{document}
```

[Откройте этот ***ошибочный*** `fancyhdr` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=fancyhdr+package+warning+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D10mm%2C%25+Set+%5Cheadheight+to+10mm%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Set+the+page+style+to+%22fancy%22...%0A%5Cpagestyle%7Bfancy%7D%0A%5Ctitle%7BWarning+without+twoside%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cdate%7BJuly+2022%7D%0A%5Cfancyhead%5BE%5D%7BHello%7D%25+This+triggers+a+warning%21%0A%5Cfancyfoot%5BE%5D%7B%5Cthepage%7D%25+This+triggers+a+warning%21%0A%5Cmaketitle%0A%5Csection%7BIntroduction%7D%0ASome+content.%0A%5Cnewpage%0A%5Csection%7BContinued...%7D%0A%5Cend%7Bdocument%7D)

Как видно на этом аннотированном снимке экрана:

![Пример предупреждения от пакета fancyhdr](/files/0cd618349b6efa9c2f4be8958768985aaf2318b1)

приведённый выше пример выдаёт предупреждения:

```latex
Предупреждение пакета fancyhdr: опция `E' у \fancyhead без опции twoside бесполезна на строке ввода 23.
Предупреждение пакета fancyhdr: опция `E' у \fancyfoot без опции twoside бесполезна на строке ввода 24.
```

**Использование одной координаты в двустороннем документе: опускание E и O**

Если вы используете `\fancyhead` или `\fancyfoot` в двустороннем документе, но опустите **`Ч`** и **`Н`** из позиции и используйте *только 1 координату*, **`Л`**, **`Ц`** или **`R`**, `*content*` будет размещено в этом месте на *чётных и нечётных страницах*.

**Пример**

Следующий пример демонстрирует опускание **`Ч`** и **`Н`** от `*locations*` указано в `\fancyhead` и \\\\`fancyfoot`. Он также использует следующие команды:

* `\pagestyle{fancy}` для установки стиля страницы, настроенного с помощью `fancyhdr`
* `\fancyhead{}\fancyfoot{}` используются для очистки всех верхних и нижних колонтитулов (см. также `\fancyhf{}`)

```latex
\begin{document}
% Установить стиль страницы на "fancy"...
\pagestyle{fancy}
%... затем настроить его.

% Очистить все верхние и нижние колонтитулы (см. также \fancyhf{})
\fancyhead{}\fancyfoot{}

% Установить позицию центра в верхнем колонтитуле, но не указывать O или E
\fancyhead[C]{В центре верхнего колонтитула на всех страницах: \thepage}

% Установить позицию слева в нижнем колонтитуле, но не указывать O или E
\fancyfoot[L]{Слева в нижнем колонтитуле на всех страницах: \thepage}

% Некоторое содержимое:
Это страница 1.\newpage
Это страница 2.
```

[Откройте этот `fancyhdr` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=fancyhdr+package+example\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D10mm%2C%25+Set+%5Cheadheight+to+10mm%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Set+the+page+style+to+%22fancy%22...%0A%5Cpagestyle%7Bfancy%7D%0A%25...+then+configure+it.%0A%0A%25+Clear+all+headers+and+footers+%28see+also+%5Cfancyhf%7B%7D%29%0A%5Cfancyhead%7B%7D%5Cfancyfoot%7B%7D%0A%0A%25+Set+the+Centre+header+location+but+do+not+specify+O+or+E%0A%5Cfancyhead%5BC%5D%7BIn+the+centre+of+the+header+on+all+pages%3A+%5Cthepage%7D%0A%0A%25+Set+the+Left+footer+location+but+do+not+specify+O+or+E%0A%5Cfancyfoot%5BL%5D%7BOn+the+left+of+the+footer+on+all+pages%3A+%5Cthepage%7D%0A%0A%25+Some+content%3A%0AThis+is+page+1.%5Cnewpage%0AThis+is+page+2.%0A%5Cend%7Bdocument%7D)

Следующая иллюстрация — аннотированная версия результата, полученного этим кодом:

![Использование одной координаты fancyhdr в двустороннем документе LaTeX](/files/4edefa02a27a92e23a88f5e9944fb6fc6279bafd)

Как видно из этой иллюстрации, следующий код

```latex
\fancyhead[C]{В центре верхнего колонтитула на всех страницах: \thepage}
```

задаёт \*\*`Ц`\*\*центральную позицию верхнего колонтитула, но не указывает, должна ли она появляться на \*\*`Н`\*\*нечётные или \*\*`Ч`чётных страницах. Опущение **`Н`** и **`Ч`** координат приводит к тому, что содержимое верхнего колонтитула в \*\*`Ц`центральной зоне появляется на нечётных и чётных страницах.

Кроме того, этот фрагмент кода

```latex
\fancyfoot[L]{Слева в нижнем колонтитуле на всех страницах: \thepage}
```

задаёт \*\*`Л`\*\*левую позицию нижнего колонтитула, но не указывает, должна ли она появляться на нечётных или чётных страницах. Опущение **`Н`** и **`Ч`** координат приводит к тому, что содержимое верхнего колонтитула в \*\*`Л`\*\*содержимого левой зоны приводит к тому, что оно появляется в левой зоне нижнего колонтитула на нечётных и чётных страницах.

**Использование одной координаты в двустороннем документе: опускание L, C и R**

Если вы опустите **`Л`**, **`Ц`** и **`R`** из позиции в двустороннем документе и использовать *только 1 координату*, **`Ч`** или **`Н`**, `*content*` будет *размещено во всех трёх зонах* на страницах с чётными или нечётными номерами, указанных в позиции.

**Пример**

Следующий пример задаёт верхний и нижний колонтитулы для `*locations*` в `\fancyhead` и `\fancyfoot` чётных страниц, но ни одна из **`Л`**, **`Ц`** или **`R`**&#x43A;оманд не указывает «зону», `*content*` , в которой `*content*` должно быть размещено. Обратите внимание, как

```latex
\begin{document}
% Установить стиль страницы на "fancy"...
\pagestyle{fancy}
%... затем настроить его.

% Очистить все верхние и нижние колонтитулы (см. также \fancyhf{})
\fancyhead{}\fancyfoot{}

% Задать верхний и нижний колонтитулы для чётных
% страниц, но опустить зону (L, C или R)
\fancyhead[E]{Верхний колонтитул: чётная страница \thepage}
\fancyfoot[E]{Нижний колонтитул: чётная страница \thepage}

% Задать верхний и нижний колонтитулы для нечётных
% страниц, но опустить зону (L, C или R)
\fancyhead[O]{Верхний колонтитул: нечётная страница \thepage}
\fancyfoot[O]{Нижний колонтитул: нечётная страница \thepage}

% Некоторое содержимое:
Это страница 1.\newpage
Это страница 2.
```

[Откройте этот `fancyhdr` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=fancyhdr+package+example\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D10mm%2C%25+Set+%5Cheadheight+to+10mm%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Set+the+page+style+to+%22fancy%22...%0A%5Cpagestyle%7Bfancy%7D%0A%25...+then+configure+it.%0A%0A%25+Clear+all+headers+and+footers+%28see+also+%5Cfancyhf%7B%7D%29%0A%5Cfancyhead%7B%7D%5Cfancyfoot%7B%7D%0A%0A%25+Set+the+header+and+footer+for+Even%0A%25+pages+but+omit+the+zone+%28L%2C+C+or+R%29%0A%5Cfancyhead%5BE%5D%7BHeader%3A+even+page+%5Cthepage%7D%0A%5Cfancyfoot%5BE%5D%7BFooter%3A+even+page+%5Cthepage%7D%0A%0A%25+Set+the+header+and+footer+for+Odd%0A%25+pages+but+omit+the+zone+%28L%2C+C+or+R%29%0A%5Cfancyhead%5BO%5D%7BHeader%3A+odd+page+%5Cthepage%7D%0A%5Cfancyfoot%5BO%5D%7BFooter%3A+odd+page+%5Cthepage%7D%0A%0A%25+Some+content%3A%0AThis+is+page+1.%5Cnewpage%0AThis+is+page+2.%0A%5Cend%7Bdocument%7D)

Следующая иллюстрация — аннотированная версия результата, полученного этим кодом:

![](/files/f306d85aacc1b99e13088ee0d25cd3fa4b618db9)

Следующий код задаёт верхний и нижний колонтитулы для **`Ч`чётных страниц, но опускает координату зоны (`Л`**, **`Ц`** или **`R`**):

```latex
\fancyhead[E]{Верхний колонтитул: чётная страница \thepage}
\fancyfoot[E]{Нижний колонтитул: чётная страница \thepage}
```

Это приводит к:

* **верхних колонтитулов для чётных страниц** содержать `Верхний колонтитул: чётная страница \thepage` во всех трёх зонах верхнего колонтитула (**`Л`**, **`Ц`** и **`R`**)
* **нижние колонтитулы чётных страниц** содержать `Нижний колонтитул: чётная страница \thepage` во всех трёх зонах нижнего колонтитула (**`Л`**, **`Ц`** и **`R`**)

Следующий код задаёт верхний и нижний колонтитулы для **`Н`нечётных страниц, но также опускает координату зоны (`Л`**, **`Ц`** или **`R`**):

```latex
\fancyhead[O]{Верхний колонтитул: нечётная страница \thepage}
\fancyfoot[O]{Нижний колонтитул: нечётная страница \thepage}
```

Это даёт результаты, похожие на результаты для чётных страниц:

* **верхние колонтитулы нечётных страниц** содержать `Верхний колонтитул: нечётная страница \thepage` во всех трёх зонах верхнего колонтитула (**`Л`**, **`Ц`** и **`R`**)
* **нижние колонтитулы нечётных страниц** содержать `Нижний колонтитул: нечётная страница \thepage` во всех трёх зонах нижнего колонтитула (**`Л`**, **`Ц`** и **`R`**)

#### \fancyhf: использование до 3 координат

`\fancyhf` — более общая команда, которую можно использовать для объединения настроек верхних и нижних колонтитулов. Для этого она поддерживает координаты **`H`** (для \*\*`H`\*\*eader) и **`В`** (для \*\*`В`\*\*ooter). Общий вид команды:

* `\fancyhf[*locations*]{*content*}`

где `*locations*` — это необязательный список мест, разделённых запятыми, задаваемых 2 или 3 координатами, чтобы разместить `*content*`.

Поскольку эта команда может задавать содержимое верхних колонтитулов *и* нижних колонтитулов, вам нужна третья координата, **`H`** или **`В`** чтобы полностью задать `*locations*`. Например, чтобы использовать (ссылаться на) центральную зону нижних колонтитулов на левых (чётных) страницах, вы бы указали это тремя координатами **`EFC`**:

* \*\*`Ч`чётных страниц
* \*\*`В`\*\*нижний колонтитул
* \*\*`Ц`центральная зона

Обратите внимание, что порядок координат не важен: **`EFC`** даёт тот же результат, что и **`FEC`** и так далее.

Следующий пример использует `\fancyhf` для размещения содержимого в \*\*`Ц`\*\*центральных зонах всех верхних и нижних колонтитулов:

```latex
\begin{document}
\pagestyle{fancy}
\fancyhf{}
\fancyhf[EHC]{Even+Header+Centre}
\fancyhf[EFC]{Even+Footer+Centre}
\fancyhf[OFC]{Odd+Footer+Centre}
\fancyhf[OHC]{Odd+Header+Centre}
\lipsum[1]\newpage\lipsum[1]
```

[Откройте этот `\fancyhf` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+the+fancyhf+command\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D10mm%2C%25+Set+%5Cheadheight+to+10mm%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Blipsum%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cpagestyle%7Bfancy%7D%0A%5Cfancyhf%7B%7D%0A%5Cfancyhf%5BEHC%5D%7BEven%2BHeader%2BCentre%7D%0A%5Cfancyhf%5BEFC%5D%7BEven%2BFooter%2BCentre%7D%0A%5Cfancyhf%5BOFC%5D%7BOdd%2BFooter%2BCentre%7D%0A%5Cfancyhf%5BOHC%5D%7BOdd%2BHeader%2BCentre%7D%0A%5Clipsum%5B1%5D%5Cnewpage%5Clipsum%5B1%5D%0A%5Cend%7Bdocument%7D)

Следующая графика — это аннотированная версия вывода, созданного предыдущим примером:

![Пример использования команды fancyhdr \fancyhf](/files/0b80d8067ee07774329d7f88764856e3a38bee23)

### Примеры

#### Использование базовых линий (правил) в верхних и нижних колонтитулах

Следующие команды, связанные с правилами, предоставляются версией 4.x `fancyhdr`:

* **`\headrulewidth`**: макрос для задания толщины линии под верхним колонтитулом
* **`\footrulewidth`**: макрос для задания толщины линии над нижним колонтитулом
* **`\headruleskip`**: макрос для задания расстояния между линией и текстом верхнего колонтитула (доступен только начиная с версии 4.0)
* **`\footruleskip`**: макрос для задания расстояния между линией и текстом нижнего колонтитула
* **`\headrule`** макрос для полного переопределения правил верхнего колонтитула (линий)
* **`\footrule`** макрос для полного переопределения правил нижнего колонтитула (линий)
* **`\headwidth`** параметр длины, определяющий общую ширину верхних и нижних колонтитулов

**ПРИМЕЧАНИЯ**:

* значение по умолчанию для `\headrulewidth` равно `0.4pt` и значение по умолчанию для `\footrulewidth` равно `0pt` поэтому по умолчанию эта линия не отображается в нижних колонтитулах.
* вы должны использовать `\renewcommand` чтобы изменить значение ширины, хранящееся в `\headrulewidth` или `\footrulewidth`
* аналогично, используйте `\renewcommand` чтобы изменить расстояние между текстом верхнего или нижнего колонтитула, заданное `\headruleskip` или `\footruleskip` соответственно

Например:

```latex
\renewcommand{\headrulewidth}{2pt}
\renewcommand{\footrulewidth}{4pt}
\renewcommand{\headruleskip}{10mm}
\renewcommand{\footruleskip}{10pt}
```

* **Примечание**: Это *потому что* следующие команды *макросов*
* * `\headrulewidth`
  * `\footrulewidth`
  * `\headruleskip`
  * `\footruleskip`

что вы *должны* используете `\renewcommand` чтобы изменить значения, хранящиеся этими командами. Следующий код *не будет работать*:

```latex
\setlength{\headrulewidth}{2pt}% не работает
\setlength{\headruleskip}{10mm}% тоже не будет работать
```

Следующий пример изменяет ширину линий и показывает, как изменить расстояние между линиями (правилами) и текстом верхнего и нижнего колонтитулов — с помощью `\headruleskip` и `\footruleskip`:

```latex
\begin{document}
% Установить стиль страницы на "fancy"...
\pagestyle{fancy}
%... затем настроить его.
\renewcommand{\headruleskip}{10mm}
\renewcommand{\footruleskip}{10pt}
\renewcommand{\headrulewidth}{2pt}
\renewcommand{\footrulewidth}{4pt}
% Некоторое содержимое:
\chapter{Управление настройками}
\section{Страница 1}
Это страница 1.
\newpage
\section{Страница 2}
Это страница 2.
\end{document}
```

[Откройте этот `fancyhdr` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=fancyhdr+package+example\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0A%25+Set+%5Cheadheight+to+15mm+to+accommodate%0A%25+value+of+%5Cheadruleskip%0Aheadheight%3D15mm%2C%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Set+the+page+style+to+%22fancy%22...%0A%5Cpagestyle%7Bfancy%7D%0A%25...+then+configure+it.%0A%5Crenewcommand%7B%5Cheadruleskip%7D%7B10mm%7D%0A%5Crenewcommand%7B%5Cfootruleskip%7D%7B10pt%7D%0A%5Crenewcommand%7B%5Cheadrulewidth%7D%7B2pt%7D%0A%5Crenewcommand%7B%5Cfootrulewidth%7D%7B4pt%7D%0A%25+Some+content%3A%0A%5Cchapter%7BWrangling+settings%7D%0A%5Csection%7BPage+1%7D%0AThis+is+page+1.%0A%5Cnewpage%0A%5Csection%7BPage+2%7D%0AThis+is+page+2.%0A%5Cend%7Bdocument%7D)

#### Использование декоративных линий в верхних колонтитулах

Следующий пример основан на одном из примеров, содержащихся в `fancyhdr` документации пакета, который использует [`fourier-orns` пакет](https://ctan.org/pkg/fourier?lang=en).

```latex
\documentclass{book}
\usepackage[paperheight=16cm, paperwidth=12cm,% Установить высоту и ширину бумаги
includehead,
nomarginpar,% Мы не хотим никаких заметок на полях
textwidth=10cm,% Установить \textwidth в 10 см
headheight=14pt,% Установите \headheight в 14pt, чтобы разместить нашу декоративную линию!
]{geometry}
\usepackage{fourier-orns}
\usepackage{fancyhdr}
\renewcommand{\headrule}{%
\vspace{-8pt}\hrulefill
\raisebox{-2.1pt}{\quad\decofourleft\decotwo\decofourright\quad}\hrulefill}
\title{Декоративная линия}
\author{Overleaf}
\date{Август 2022}
\begin{document}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[LE]{\nouppercase{\rightmark\hfill\leftmark}}
\fancyhead[RO]{\nouppercase{\leftmark\hfill\rightmark}}
\fancyfoot[LE,RO]{\hfill\thepage\hfill}
\chapter{Декоративные правила!}
\section{Introduction}
Этот пример взят из документации \texttt{fancyhdr}.
\newpage
\section{Смотрите на верхний колонтитул}
\newpage
\section{Да, очень аккуратно!}
\end{document}
```

[Откройте этот пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Drawing+fancy+rules+in+headers\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D14pt%2C%25+Set+%5Cheadheight+to+14pt+to+accommodate+our+fancy+rule%21%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfourier-orns%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Crenewcommand%7B%5Cheadrule%7D%7B%25%0A%5Cvspace%7B-8pt%7D%5Chrulefill%0A%5Craisebox%7B-2.1pt%7D%7B%5Cquad%5Cdecofourleft%5Cdecotwo%5Cdecofourright%5Cquad%7D%5Chrulefill%7D%0A%5Ctitle%7BDecorative+line%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cdate%7BAugust+2022%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cpagestyle%7Bfancy%7D%0A%5Cfancyhf%7B%7D%0A%5Cfancyhead%5BLE%5D%7B%5Cnouppercase%7B%5Crightmark%5Chfill%5Cleftmark%7D%7D%0A%5Cfancyhead%5BRO%5D%7B%5Cnouppercase%7B%5Cleftmark%5Chfill%5Crightmark%7D%7D%0A%5Cfancyfoot%5BLE%2CRO%5D%7B%5Chfill%5Cthepage%5Chfill%7D%0A%5Cchapter%7BFancy+rules%21%7D%0A%5Csection%7BIntroduction%7D%0AThis+example+is+taken+from+the+%5Ctexttt%7Bfancyhdr%7D+documentation.%0A%5Cnewpage%0A%5Csection%7BSee+the+header%7D%0A%5Cnewpage%0A%5Csection%7BYes%2C+very+neat%21%7D%0A%5Cend%7Bdocument%7D)

Этот пример выдаёт следующий результат:

![Пример создания декоративных линий в верхних колонтитулах через пакет fourier-orns](/files/7d5c687fe4b76968e9b86f4f07fa75ac6ce3bc01)

* Примечания к командам в этом примере
  * **`\headrule`**: макрос, определяющий, как рисовать декоративную линию в верхнем колонтитуле. Здесь он переопределён так, чтобы рисовать линию, содержащую украшения из [`fourier-orns` пакет](https://ctan.org/pkg/fourier?lang=en).
  * **`\leftmark`** и **`\rightmark`**: эти команды используются для получения «данных метки», вставляемых командами разделов LaTeX. Для более полного объяснения этих команд мы рекомендуем сопутствующую статью [*Как LaTeX верстает верхние и нижние колонтитулы?*](/latex/ru/podrobnye-stati/23-how-does-latex-typeset-headers-and-footers.md)
  * **`\nouppercase`**: команда, предоставляемая пакетом `fancyhdr` для предотвращения набора текста верхнего или нижнего колонтитула в верхнем регистре, что является стилем по умолчанию для верхних и нижних колонтитулов LaTeX

#### Предупреждение fancyhdr: \headheight слишком мал

Если вы получаете `fancyhdr` предупреждение о том, что `\headheight` слишком мал, вам *можно* нужно задать ему некоторое значение `высота` записав

```latex
\setlength{\headheight}{height}
```

но [рекомендуемое решение — использовать `geometry` пакет](https://tex.stackexchange.com/a/100408) и применить его `headheight=*height*` опцию, чтобы задать значение `\headheight` на `*height*`.

Следующий пример возвращается к нашему более раннему примеру с классом book и сбрасывает `\headheight` до 2 см с помощью `headheight=2cm`:

```latex
\documentclass{book}
\usepackage[paperheight=16cm, paperwidth=12cm,% Установить высоту и ширину бумаги
includehead,% См. ниже пояснение
nomarginpar,% Мы не хотим никаких заметок на полях
textwidth=10cm,% Установить \textwidth в 10 см
headheight=2cm,% Установите \headheight в 2 см
showframe % Показывать разметку страницы
]{geometry}
\title{Мемуары пользователя \TeX{}}
\author{Overleaf}
\begin{document}

\frontmatter
\maketitle
Это вводная часть, в которой используются римские цифры.

\mainmatter
\chapter{С чего мне начать}
Глава 1: Короткая глава, которая заканчивается на странице 1.

\chapter{Что я помню}
Глава 2: Начинается на странице 3, поэтому \LaTeX{} вставляет «пустую» страницу 2.
\end{document}
```

[Открыть в Overleaf: пример настройки `\headheight` с использованием пакета geometry](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Setting+headheight+using+the+geometry+package\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%25+See+below+for+an+explanation%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D2cm%2C%25+Set+%5Cheadheight+to+2cm%0Ashowframe+%25+Show+the+page+layout%0A%5D%7Bgeometry%7D%0A%5Ctitle%7BMemoirs+of+a+%5CTeX%7B%7D+user%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cfrontmatter%0A%5Cmaketitle%0AThis+is+frontmatter+which+uses+Roman+numerals.%0A%0A%5Cmainmatter%0A%5Cchapter%7BWhere+do+I+start%7D%0AChapter+1%3A+A+short+chapter+that+ends+on+page+1.%0A%0A%5Cchapter%7BThings+I+remember%7D%0AChapter+2%3A+Starts+on+page+3%2C+so+%5CLaTeX%7B%7D+inserts+a+%60%60blank%27%27+page+2.%0A%5Cend%7Bdocument%7D)

**Примечания к пакету geometry**

В приведённом выше примере используются несколько опций `geometry` пакета:

* `nomarginpar`: указывает, что нам не нужны какие-либо абзацы на полях
* `textwidth=10cm`: задаёт значение (10 см) для `\textwidth`, одного из параметров разметки страницы LaTeX [параметров разметки страницы](/latex/ru/podrobnye-stati/04-a-visual-guide-to-latex-s-page-layout-parameters.md)
* `headheight=2cm`: задаёт значение (2 мм) для `\headheight`, одного из параметров разметки страницы LaTeX [параметров разметки страницы](/latex/ru/podrobnye-stati/04-a-visual-guide-to-latex-s-page-layout-parameters.md)
* `showframe`: рисует разметку страницы

Это `geometry` пакет также предоставляет опции, которые влияют на то, как он вычисляет некоторые значения параметров разметки страницы LaTeX; например:

* `includehead`
* `includefoot`

Наш пример (выше) использовал `includehead` чтобы гарантировать, что высота области текста напрямую изменяется при изменении значения `headheight`. Следующая диаграмма, взятая из `geometry` документации пакета, показывает, как `includehead` и `includefoot` опции влияют на вычисление высоты текста документа:

![Изображение из документации пакета geometry, показывающее, как опции includehead и includefoot влияют на вычисление высоты текста документа](/files/52ef84126fce5f0cdc919f5467eb42fa8bb9f803)

Обратите внимание, что `geometry` пакет обозначает высоту области текста с помощью опции `textheight` тогда как LaTeX использует одноимённый [`\textheight` параметр разметки страницы](/latex/ru/podrobnye-stati/04-a-visual-guide-to-latex-s-page-layout-parameters.md#notes-on-the-page-layout-parameters-and-equations).

#### Нижние колонтитулы, содержащие страницу X из N

Источник: отредактированная версия кода, опубликованного на tex.stackexchange: <https://tex.stackexchange.com/a/282840>.

Этот пример создаёт нижний колонтитул, который отображает текущий номер страницы и общее число страниц. Он использует [`lastpage` пакет](https://ctan.org/pkg/lastpage?lang=en) вместе с модифицированной версией `plain` стиля страницы, реализованного с помощью `\fancypagestyle` команды, предоставляемой `fancyhdr`.

```latex
\documentclass[12pt]{article}
\usepackage[paperheight=16cm, paperwidth=12cm,% Установить высоту и ширину бумаги
includehead,% См. ниже пояснение
nomarginpar,% Мы не хотим никаких заметок на полях
textwidth=10cm,% Установить \textwidth в 10 см
headheight=16pt % Установите \headheight в 16pt, чтобы избежать предупреждений fancyhdr
]{geometry}
\usepackage{lastpage}
\usepackage{fancyhdr}
\usepackage{lipsum} % только для текста-заглушки
\pagestyle{fancy}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[C]{\thepage\ of \pageref{LastPage}}
\fancypagestyle{plain}{%
  \renewcommand{\headrulewidth}{0pt}%
  \fancyhf{}%
  \fancyfoot[C]{\thepage\ of \pageref{LastPage}}}
\begin{document}
\title{Ещё одна демонстрация fancyhdr}
\author{\texttt{tex.stackexchange} \textit{и др.}}
\maketitle

\lipsum
\end{document}
```

[Откройте этот пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Footers+with+page+X+of+Y\&snip=%5Cdocumentclass%5B12pt%5D%7Barticle%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%25+See+below+for+an+explanation%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D16pt+%25+Set+%5Cheadheight+to+16pt+to+avoid+fancyhr+warnings%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Blastpage%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cusepackage%7Blipsum%7D+%25+just+for+mock+text%0A%5Cpagestyle%7Bfancy%7D%0A%5Crenewcommand%7B%5Cheadrulewidth%7D%7B0pt%7D%0A%5Cfancyfoot%5BC%5D%7B%5Cthepage%5C+of+%5Cpageref%7BLastPage%7D%7D%0A%5Cfancypagestyle%7Bplain%7D%7B%25%0A++%5Crenewcommand%7B%5Cheadrulewidth%7D%7B0pt%7D%25%0A++%5Cfancyhf%7B%7D%25%0A++%5Cfancyfoot%5BC%5D%7B%5Cthepage%5C+of+%5Cpageref%7BLastPage%7D%7D%7D%0A%5Cbegin%7Bdocument%7D%0A%5Ctitle%7BAnother+fancyhdr+demo%7D%0A%5Cauthor%7B%5Ctexttt%7Btex.stackexchange%7D+%5Ctextit%7Bet+al%7D%7D%0A%5Cmaketitle%0A%0A%5Clipsum%0A%5Cend%7Bdocument%7D)

#### Создание полностью пустых страниц: без верхних и нижних колонтитулов

Как отмечено в [`fancyhdr` документация пакета](http://mirrors.ctan.org/macros/latex/contrib/fancyhdr/fancyhdr.pdf), если вы создаёте документ, используя

* окружения `книга` классом *без* окружения `openany` опцию, или
* окружения `отчёт` класс с опцией `openright` опцией

любая часть (`\part{...}`) и глава (`\chapter{...}`) будут начинаться на нечётных (правых) страницах.

Иногда LaTeX должен вставить «пустую» страницу, чтобы следующая глава или часть начиналась на правой странице, — но эта «пустая» страница всё равно будет содержать колонтитулы, которые многие считают некрасивыми.

**Пример «пустых» страниц в документе класса book**

Следующие `книга` пример класса создаёт 5 страниц, включая 2 правые страницы глав.

```latex
\begin{document}

\frontmatter
\maketitle
Это вводная часть, в которой используются римские цифры.

\mainmatter
\chapter{С чего мне начать}
Глава 1: Короткая глава, которая заканчивается на странице 1.

\chapter{Что я помню}
Глава 2: Начинается на странице 3, поэтому \LaTeX{} вставляет «пустую» страницу 2.

\end{document}
```

[Откройте этот `книга` пример класса в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Demonstrating+blank+pages\&snip=%5Cdocumentclass%7Bbook%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D10cm%5D%7Bgeometry%7D%0A%5Ctitle%7BMemoirs+of+a+%5CTeX%7B%7D+user%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cfrontmatter%0A%5Cmaketitle%0AThis+is+frontmatter+which+uses+Roman+numerals.%0A%0A%5Cmainmatter%0A%5Cchapter%7BWhere+do+I+start%7D%0AChapter+1%3A+A+short+chapter+that+ends+on+page+1.%0A%0A%5Cchapter%7BThings+I+remember%7D%0AChapter+2%3A+Starts+on+page+3%2C+so+%5CLaTeX%7B%7D+inserts+a+%60%60blank%27%27+page+2.%0A%0A%5Cend%7Bdocument%7D)

Как показано на следующей аннотированной графике, глава 2 начинается на странице 3, потому что LaTeX вставил страницу 2, которая формально «пустая», но содержит некрасивый верхний колонтитул.

![Пример пустых страниц в документе класса book](/files/8f93705019948582b60775df8339afe857068c7b)

Можно использовать различные механизмы — код и пакеты — чтобы гарантировать, что вставленные страницы, такие как страница 2 выше, полностью пусты. Вот несколько примеров:

* используйте `emptypage` пакет, добавив следующую строку в преамбулу документа:

```latex
\usepackage{emptypage}
```

* вручную вставьте пустую страницу в конце главы 1, чтобы глава 2 естественным образом начиналась на правой странице, устраняя необходимость для LaTeX принудительно создавать новую страницу. Следующий код предлагается в `fancyhdr` документации пакета:

```latex
\clearpage
\begingroup
\pagestyle{empty}\cleardoublepage
\endgroup
```

* аналогично, вы можете создать новую страницу в конце главы 1 и задать для неё стиль empty с помощью `\thispagestyle{empty}`:

```latex
\newpage\thispagestyle{empty}
```

Для получения дополнительной информации и примеров использования действительно пустых страниц обратитесь к [TUG FAQ](https://texfaq.org/FAQ-reallyblank) или ищите [вопросы с тегом `blank-page` на TeX.stackexchange](https://tex.stackexchange.com/questions/tagged/blank-page).

* **СОВЕТ**: В TeX FAQ есть статья под названием [о том, как избавиться от номеров страниц](https://texfaq.org/FAQ-nopageno%7CHow) которая содержит полезные советы.

#### Изменение стиля одной страницы

Иногда удобно изменить стиль конкретной страницы; например, удалить верхний и нижний колонтитулы с текущей страницы главы:

```latex
\begin{document}
\maketitle
\chapter{Использование разных стилей страниц}
\lipsum[1] % через \usepackage{lipsum}
\chapter{Образец главы}
\thispagestyle{empty} % удалить верхний и нижний колонтитулы со страницы главы
\lipsum[1]
\clearpage
\section{Новый раздел}
\lipsum[1]
\end{document}
```

[Откройте этот пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Setting+the+style+of+a+single+page\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%7Blipsum%7D%0A%5Ctitle%7BChanging+the+style+of+a+single+page%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cmaketitle%0A%5Cchapter%7BUsing+different+page+styles%7D%0A%5Clipsum%5B1%5D+%25+via+%5Cusepackage%7Blipsum%7D%0A%5Cchapter%7BSample+Chapter%7D%0A%5Cthispagestyle%7Bempty%7D+%25+remove+headers%2Ffooters+from+the+chapter+page%0A%5Clipsum%5B1%5D%0A%5Cclearpage%0A%5Csection%7BNew+section%7D%0A%5Clipsum%5B1%5D%0A%5Cend%7Bdocument%7D)

#### Многострочные верхние или нижние колонтитулы

Верхние и нижние колонтитулы, создаваемые `fancyhdr` могут содержать несколько строк. Следующий пример основан на `fancyhdr` документации, но расширен, чтобы включать многострочный верхний колонтитул. В этом примере используется `datetime2` команду пакета `\DTMnow` для вставки даты, когда черновик документа был набран. Команда `\\` используется для завершения первой строки верхнего колонтитула.

```latex
\documentclass{book}
\usepackage[paperheight=16cm, paperwidth=12cm,% Установить высоту и ширину бумаги
includehead,
nomarginpar,% Мы не хотим никаких заметок на полях
textwidth=10cm,% Установить \textwidth в 10 см
headheight=25pt,% Установите \headheight в 25pt, чтобы разместить многострочный верхний колонтитул
]{geometry}
\usepackage{fancyhdr}
\usepackage{datetime2}
\begin{document}
% Установить стиль страницы на "fancy"...
\pagestyle{fancy}
%... затем настроить его.
\fancyhead{} % очистить все поля верхнего колонтитула
\fancyhead[RO,LE]{\textbf{ЧЕРНОВИК} (Набрано \DTMnow)\\\textbf{Успеваемость новых выпускников}}
\fancyfoot{} % очистить все поля нижнего колонтитула
\fancyfoot[LE,RO]{\thepage}
\fancyfoot[LO,CE]{От: К. Грант}
\fancyfoot[CO,RE]{Кому: Дин А. Смит}
% Некоторое содержимое:
Это страница 1.\newpage
Это страница 2.
\end{document}
```

[Откройте этот `fancyhdr` пример в Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Multiline+header+fancyhdr+package+example\&snip=%5Cdocumentclass%7Bbook%7D%0A%5Cusepackage%5Bpaperheight%3D16cm%2C+paperwidth%3D12cm%2C%25+Set+the+height+and+width+of+the+paper%0Aincludehead%2C%0Anomarginpar%2C%25+We+don%27t+want+any+margin+paragraphs%0Atextwidth%3D10cm%2C%25+Set+%5Ctextwidth+to+10cm%0Aheadheight%3D25pt%2C%25+Set+%5Cheadheight+to+25pt+to+accommodate+the+multiline+header%0A%5D%7Bgeometry%7D%0A%5Cusepackage%7Bfancyhdr%7D%0A%5Cusepackage%7Bdatetime2%7D%0A%5Cbegin%7Bdocument%7D%0A%25+Set+the+page+style+to+%22fancy%22...%0A%5Cpagestyle%7Bfancy%7D%0A%25...+then+configure+it.%0A%5Cfancyhead%7B%7D+%25+clear+all+header+fields%0A%5Cfancyhead%5BRO%2CLE%5D%7B%5Ctextbf%7BDRAFT%7D+%28Typeset+%5CDTMnow%29%5C%5C%5Ctextbf%7BThe+performance+of+new+graduates%7D%7D%0A%5Cfancyfoot%7B%7D+%25+clear+all+footer+fields%0A%5Cfancyfoot%5BLE%2CRO%5D%7B%5Cthepage%7D%0A%5Cfancyfoot%5BLO%2CCE%5D%7BFrom%3A+K.+Grant%7D%0A%5Cfancyfoot%5BCO%2CRE%5D%7BTo%3A+Dean+A.+Smith%7D%0A%25+Some+content%3A%0AThis+is+page+1.%5Cnewpage%0AThis+is+page+2.%0A%5Cend%7Bdocument%7D)

Следующая иллюстрация показывает результат, полученный этим примером:

![Пример многострочного верхнего колонтитула, созданного fancyhdr](/files/c920f591bd8677c33735f46e25c10086a44878bb)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/ru/formatirovanie/02-headers-and-footers.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
