Définir les en-têtes et les pieds de page

Préalable :

Par défaut LaTeX propose principalement trois styles pour les en-têtes et pieds de page :
  • le style empty : aucune en-tête et aucun pied de page ne seront affichés.
    Pour utiliser ce style, il suffit d'inclure la commande \pagestyle{empty} dans le préambule.
  • le style plain (c'est le style par défaut) : seul le numéro de page est affiché au centre du pied de page.
    Pour utiliser ce style, il suffit d'inclure la commande \pagestyle{plain} dans le préambule.
  • le style headings : les en-têtes et les pieds de page sont définis automatiquement selon la classe de document utilisée.
    Pour utiliser ce style, il suffit d'inclure la commande \pagestyle{headings} dans le préambule.
Il est bien sur possible de passer outre ces styles et de paramétrer soi-même les en-têtes et les pieds de page grâce à l'extension fancyhdr.

Personnalisation avec l'extension fancyhdr

L'extension se charge en incluant les commandes \usepackage{fancyhdr} et \pagestyle{fancy} dans le préambule de son document.

Le paramétrage des en-têtes se fait avec la commande \fancyhead[zone]{contenu} et le paramétrage des pieds de page avec la commande \fancyfoot[zone]{contenu}.
Pour définir la zone, on utilise le codage suivant :
  • L : champ gauche pour toutes les pages
  • LE : champ gauche pour les pages paires
  • LO : champ gauche pour les pages impaires
  • C : champ central pour toutes les pages
  • CE : champ central pour les pages paires
  • CO : champ central pour les pages impaires
  • R : champ droit pour toutes les pages
  • RE : champ droit pour les pages paires
  • RO : champ droit pour les pages impaires
Pour le contenu, on dispose de toutes les commandes de formatage de texte de LaTeX, ainsi que des instructions suivantes :
  • \thepage : imprime le numéro de la page courante
  • \thesection : imprime le numéro de la section courante
  • \thechapter avec un document du type books ou report : imprime le numéro du chapitre courant
  • \leftmark :
    • avec un document du type article, imprime le nom de la section courante
    • avec un document du type books ou report, imprime le nom du chapitre courant
  • \rightmark :
    • avec un document du type article, imprime le nom de la sous-section courante
    • avec un document du type books ou report, imprime le nom de la section courante
Remarques :
  • pour forcer une zone à rester vide, il suffit d'utiliser les commandes \fancyhead[zone concernée]{}, pour les en-têtes et \fancyfoot[zone concernée]{}, pour les pieds de page.
  • pour forcer l'affichage d'une ligne horizontale, il suffit d'utiliser la commande \renewcommand{\headrulewidth}{1pt}, pour les en-têtes et \renewcommand{\footrulewidth}{1pt}, pour les pieds de page.
  • pour ne pas afficher de ligne horizontale, il suffit d'utiliser la commande \renewcommand{\headrulewidth}{0pt}, pour les en-têtes et \renewcommand{\footrulewidth}{0pt}, pour les pieds de page.
Exemple :

Code de l'exemple :
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{fancyhdr}
\pagestyle{fancy}

\renewcommand{\headrulewidth}{1pt}
\fancyhead[C]{\textbf{page \thepage}} 
\fancyhead[L]{\leftmark}
\fancyhead[R]{machin}

\renewcommand{\footrulewidth}{1pt}
\fancyfoot[C]{\textbf{page \thepage}} 
\fancyfoot[L]{truc}
\fancyfoot[R]{\leftmark}

\begin{document}
\section{Ma section}
Blabla
\end{document}

Fichier de l'exemple : entetepied.tex