| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| composition:texte:pages:composer_des_en-tetes_et_pieds_de_page [2018/12/09 10:39] – jejust | 3_composition:texte:pages:entetes:composer_des_en-tetes_et_pieds_de_page [2022/10/10 14:11] (Version actuelle) – Usage de ⟨...⟩ dbitouze |
|---|
| ====== Comment définir les hauts et bas de page? ====== | ====== Comment définir les hauts et bas de page? ====== |
| |
| |
| <note> | <note> |
| Lorsque le haut ou bas de page défini est trop grand, on voit | Lorsque le haut ou bas de page défini est trop grand, on voit |
| apparaître des messages d'erreur du style « Overfull ''vbox'' ». Il faut | apparaître des messages d'erreur du style « ''Overfull vbox'' ». Il faut |
| alors redimensionner la longueur correspondante. | alors redimensionner la longueur correspondante. |
| |
| |
| <code latex> | <code latex> |
| \addtolength{\headheight}{1.5pt}} | \addtolength{\headheight}{1.5pt} |
| </code> | </code> |
| </note> | </note> |
| |
| | ===== Avec les commandes de base ===== |
| |
| | Par défaut, <latex>\LaTeX</latex> offre la numérotation des pages en bas de page (style ''plain''). Mais, il propose également 3 autres styles de mise en page. |
| $\Reponse$ Par défaut, <latex>\LaTeX</latex> offre la numérotation des pages en bas de | |
| page (style plain). Mais, il propose également 3 autres styles de mise en page. | |
| Il s'agit des styles : | Il s'agit des styles : |
| * ''empty'' (hauts et bas de pages vides), | * ''empty'' (hauts et bas de pages vides), |
| * ''headings'' (la numérotation des pages apparaît en haut ainsi que différentes informations suivant la classe de document), et | * ''headings'' (la numérotation des pages apparaît en haut ainsi que différentes informations suivant la classe de document), et |
| * ''myheadings'' (les commandes ''markboth'' et ''markright'' permettent de définir les informations qui devront apparaître dans le haut de page. ''markboth''\marg{en-tête gauche}\marg{en-tête droite} s'utilise pour un document recto-verso alors que ''markright''\marg{en-tête} s'applique à toutes les pages d'un document en simple recto). | * ''myheadings'' (les commandes ''\markboth'' et ''\markright'' permettent de définir les informations qui devront apparaître dans le haut de page. ''\markboth{⟨//en-tête gauche//⟩}{⟨//en-tête droite//⟩}'' s'utilise pour un document recto-verso alors que ''\markright{⟨//en-tête//⟩}'' s'applique à toutes les pages d'un document en simple recto). |
| |
| | L'appel d'un style pour tout le document se fait avec la commande ''\pagestyle{⟨//style//⟩}''. La commande ''\thispagestyle{⟨//style//⟩}'' permet d'appeler un style sur une page particulière. |
| L'appel d'un style pour tout le document se fait via la commande | |
| ''\pagestyle{style}''. La commande ''\thispagestyle'' permet | |
| d'appeler un style sur une page particulière. | |
| |
| |
| des déclarations locales de style soient également nécessaires, | des déclarations locales de style soient également nécessaires, |
| puisque certaines commandes <latex>\LaTeX</latex> réinitialisent le style de la page | puisque certaines commandes <latex>\LaTeX</latex> réinitialisent le style de la page |
| sur laquelle elles apparaîssent. | sur laquelle elles apparaissent. |
| </note> | </note> |
| |
| | ===== Avec l'extension “fancyhdr” ===== |
| |
| | L'extension [[ctanpkg>fancyhdr]] permet de définir des en-têtes et pieds de page. Elle est implémentée pour <latex>\LaTeXe</latex> et remplace l'extension [[ctanpkg>fancyheadings]] pour <latex>\LaTeX</latex> 2.09. |
| |
| $\Reponse$ Le package [[ctanpkg>fancyhdr|fancyhdr]] permet de définir des en-têtes et | La définition des pages spéciales se fait par ''\thispagestyle{⟨//nom_du_style//⟩}''. Le nom du style peut être « fancy », « plain » ou défini par l'utilisateur. L'application d'un style à toutes les pages (hors pages « spéciales ») se fait grâce à la commande ''\pagestyle{//nom_du_style//}''. |
| pieds de page. Il est implémenté pour <latex>\LaTeXe</latex> et remplace | |
| [[ctanpkg>fancyheadings|fancyheadings]] pour <latex>\LaTeX</latex> 2.09. | |
| |
| La définition des pages spéciales se fait par | Voici les principales commandes que définit [[ctanpkg>fancyhdr]] : |
| ''\thispagestyle{nomdustyle}''. Le nom du style peut être | |
| «~fancy~», «~plain~» ou défini par l'utilisateur. L'application d'un | |
| style à toutes les pages (hors pages «~spéciales~») se fait grâce à la | |
| commande ''pagestyle''\marg{nomdustyle}. | |
| | |
| Voici les principales commandes que définit [[ctanpkg>fancyhdr|fancyhdr]] : | |
| |
| * ''fancyhf'' pour initialiser les champs ; | * ''fancyhf'' pour initialiser les champs ; |
| * '' fancyhead'' pour remplir l'en-tête --- cette commande prend un argument facultatif indiquant la position et la page (avec l'option «~twoside~» : «~L~» pour la gauche, «~R~» pour la droite et «~C~» pour le centre, «~O~» pour les pages impaires et «~E~» pour les pages paires ; | * ''fancyhead'' pour remplir l'en-tête --- cette commande prend un argument facultatif indiquant la position et la page (avec l'option ''twoside'' : « ''L'' » pour la gauche (//left//), « ''R'' » pour la droite (//right//) et « ''C'' » pour le centre, « ''O'' » pour les pages impaires (//odd//) et « ''E'' » pour les pages paires (//even//) ; |
| * ''fancyfoot'' se comporte de la même façon que ''fancyhead'', mais pour le pied de page ; | * ''fancyfoot'' se comporte de la même façon que ''fancyhead'', mais pour le pied de page ; |
| * ''fancypagestyle'' permet de définir un nouveau style d'en-têtes et pieds de page --- elle prend en premier argument le nom du style et en deuxième, la définition du style ; | * ''fancypagestyle'' permet de définir un nouveau style d'en-têtes et pieds de page --- elle prend en premier argument le nom du style et en deuxième, la définition du style ; |
| * ''footrulewidth'' contient la largeur du filet de séparation entre le pied de page et le reste de la page. | * ''footrulewidth'' contient la largeur du filet de séparation entre le pied de page et le reste de la page. |
| |
| | On peut voir un exemple d'utilisation de [[ctanpkg>fancyhdr]] sur l'exemple suivant: |
| On peut voir un exemple d'utilisation de [[ctanpkg>fancyhdr|fancyhdr]] sur l'exemple suivant: | |
| |
| <code latex> | <code latex> |
| \documentclass{article} | \documentclass{article} |
| \usepackage[latin1]{inputenc} | \usepackage[latin1]{inputenc} |
| \usepackage[T1]{fontenc} | \usepackage[T1]{fontenc} |
| | |
| \usepackage{fancyhdr} | \usepackage{fancyhdr} |
| \usepackage[frenchb]{babel} | \usepackage[frenchb]{babel} |
| |
| \fancyhf{} | \fancyhf{} |
| \renewcommand{\headrulewidth}{0.2pt} | \renewcommand{\headrulewidth}{0.2pt} |
| \renewcommand{\footrulewidth}{0.2pt} | \renewcommand{\footrulewidth}{0.2pt} |
| \fancyhead[L]{\footnotesize{Un exemple d'en-têtes | \fancyhead[L]{\footnotesize{Un exemple d'en-têtes |
| et pieds de page}} | et pieds de page}} |
| \fancyfoot[R]{\thepage} | \fancyfoot[R]{\thepage} |
| \fancyfoot[C]{\footnotesize{---}} | \fancyfoot[C]{\footnotesize{---}} |
| \fancyfoot[L]{\footnotesize{\textit{Les | \fancyfoot[L]{\footnotesize{\textit{Les |
| rédacteurs de la FAQ}}} | rédacteurs de la FAQ}}} |
| |
| \begin{document} | \begin{document} |
| \thispagestyle{fancy} | \thispagestyle{fancy} |
| Voici une jolie page avec des jolis en-têtes | Voici une jolie page avec des jolis en-têtes |
| et pieds de page bien définis, avec un petit | et pieds de page bien définis, avec un petit |
| filet de 0,2 points. | filet de 0,2 points. |
| \end{document} | \end{document} |
| </code> | </code> |
| |
| |
| De plus, il est possible de demander à <latex>\LaTeX</latex> d'utiliser les titres | De plus, il est possible de demander à <latex>\LaTeX</latex> d'utiliser les titres des sections ou chapitres courants dans les en-têtes. Les commandes ''\sectionmark'' (et ''\chaptermark'', ''\subsectionmark''...), ''\markboth'' et ''\markright'' s'utilisent comme dans l'exemple. |
| des sections ou chapitres courants dans les en-têtes. Les commandes | |
| ''\sectionmark'' (et ''\chaptermark'', ''\subsectionmark''...), | |
| ''\markboth'' et ''\markright'' s'utilisent comme dans l'exemple. | |
| |
| Utiliser le découpage logique dans les en-têtes et pieds de page \label{sectionmark}}: | Utiliser le découpage logique dans les en-têtes et pieds de page : |
| |
| <code latex> | <code latex> |
| \documentclass{book} | \documentclass{book} |
| \usepackage[latin1]{inputenc} | \usepackage[latin1]{inputenc} |
| \usepackage[T1]{fontenc} | \usepackage[T1]{fontenc} |
| | |
| \usepackage{fancyhdr} | \usepackage{fancyhdr} |
| \usepackage[frenchb]{babel} | \usepackage[frenchb]{babel} |
| |
| \fancyhf{} | \fancyhf{} |
| \renewcommand{\headheight}{12.2pt} | \renewcommand{\headheight}{12.2pt} |
| \renewcommand{\headrulewidth}{0.2pt} | \renewcommand{\headrulewidth}{0.2pt} |
| \renewcommand{\footrulewidth}{0.2pt} | \renewcommand{\footrulewidth}{0.2pt} |
| \fancyhead[LE,RO]{\slshape \rightmark} | \fancyhead[LE,RO]{\slshape \rightmark} |
| \fancyhead[LO,RE]{\slshape \leftmark} | \fancyhead[LO,RE]{\slshape \leftmark} |
| \fancyfoot[C]{\thepage} | \fancyfoot[C]{\thepage} |
| |
| \begin{document} | \begin{document} |
| \thispagestyle{fancy} | \thispagestyle{fancy} |
| \chapter{Un chapitre} | |
| |
| \section{Première partie} | \chapter{Un chapitre} |
| Voici une jolie page avec des jolis en-têtes | |
| et pieds de page bien définis, avec un petit | |
| filet de 0,2 points. | |
| \newpage | |
| |
| \section{Deuxième partie} | \section{Première partie} |
| De plus, on voit bien que les titre du | Voici une jolie page avec des jolis en-têtes |
| chapitre et de la section sont reproduits | et pieds de page bien définis, avec un petit |
| dans l'en-tête, page ci-contre. | filet de 0,2 points. |
| | \newpage |
| |
| \section{Troisième partie} | \section{Deuxième partie} |
| Le style fancy par défaut se rapproche de | De plus, on voit bien que les titre du |
| cet exemple. | chapitre et de la section sont reproduits |
| \end{document} | dans l'en-tête, page ci-contre. |
| | |
| | \section{Troisième partie} |
| | Le style fancy par défaut se rapproche de |
| | cet exemple. |
| | \end{document} |
| </code> | </code> |
| |
| | L'extension [[ctanpkg>fancyhdr]] traite également la question des pages de garde (ou [[3_composition:texte:pages:numerotation_des_pages:supprimer_les_numeros_de_pages|non numérotées]]), en vous permettant de définir différents styles pour ces pages et les autres pages du document. |
| | |
| | ===== Avec l'extension “scrlayer-scrpage” ===== |
| | |
| | L'extension [[ctanpkg>scrlayer-scrpage|scrlayer-scrpage]] fournit une autre approche pour contrôler les hauts et bas de pages. Cette extension s'utilise en lien avec les classes [[ctanpkg>koma-script|KOMA-script]], en lieu et place de l'extension [[ctanpkg>fancyhdr]]. |
| | |
| | ===== Avec la classe “memoir” ===== |
| |
| | La classe [[ctanpkg>memoir]] inclut des toutes les fonctionnalités de l'extension [[ctanpkg>fancyhdr]] et dispose de plusieurs styles prédéfinis. |
| |
| | ---- |
| | //Source:// [[faquk>FAQ-fancyhdr|Alternative head- and footlines in LaTeX]] |
| |
| {{htmlmetatags>metatag-keywords=(LaTeX) | {{htmlmetatags>metatag-keywords=(LaTeX,mise en page,en-tête et pied de page) |
| metatag-og:title=(Comment définir les hauts et bas de page?) | metatag-og:title=(Comment définir les hauts et bas de page) |
| metatag-og:site_name=(FAQ LaTeX francophone) | metatag-og:site_name=(FAQ LaTeX francophone) |
| }} | }} |
| |