Je viens de commencer à utiliser fancyhead
.
Jai rencontré un problème que mes titres de sous-section sont placés sur la même ligne que len-tête. Si le titre de la sous-section est trop long, les deux fuites de texte seront imprimées lune au-dessus de lautre.
Je serais satisfait de lune des deux solutions:
- Supprimer le titre de la sous-section des en-têtes
- Assurez-vous que le titre de la sous-section et len-tête que jai créé seront sur des lignes différentes. Une sorte de solution avec une table peut-être – comme dans Obtenir le chapitre et la section dans \ fancyhead .
Je vais joindre mon code factice ci-dessous:
\documentclass{article} \usepackage[utf8]{inputenc} \usepackage[swedish]{babel} \usepackage{lipsum} \usepackage{fancyhdr} \pagestyle{fancy} \fancyhead[R]{Studiehandledning \date{\today}} \title{Studiehandledning till kursen \\ xxxxx} \begin{document} \maketitle \newpage \section{bla bla} \lipsum \subsection{skalleper} \lipsum \section{wlä wlä wlä} \lipsum \section{olika oolika ffgfd rgrgreg rgdsfgdsfgrd gsdgsdg gsrgrg} \lipsum \subsection{olika oolika ffgfd rgrgreg rgdsfgdsfgrd gsdgsdg gsrgrg} \lipsum \end{document}
Une particularité est également que seules les sous-sections apparaissent dans len-tête, pas les sections. Mais cela pourrait être lié à la discussion concernant les pages paires et impaires dans Obtenir le chapitre et la section dans \ fancyhead .
Commentaires
- Je ne sais pas ce que vous voulez, car vos points 1 et 2 sont un peu contradictoires. Voulez-vous ou non un titre de sous-section? Quen est-il des titres de section?
- Ce nest pas nécessaire aux fins de ce rapport. Donc deux options. Les titres des sections napparaissent pas dans len-tête – comme je lai écrit. Cest peut-être dû à cette chose de page paire / impaire. Je ' ne suis pas sûr.
- Mais que voulez-vous avoir exactement?
- Cest plus sur ce que je ne veux pas avoir. Je ne veux pas que du texte interférant / chevauche mon en-tête prévu.
Réponse
Peut-être que ce code fait ce que vous want (uniquement votre en-tête et le numéro de page):
\pagestyle{fancy} \fancyhf{} \fancyhead[R]{Studiehandledning \date{\today}} \fancyfoot[C]{\thepage}
Ajouté:
Je propose cela, en utilisant largument optionnel de (sous) section lorsque le titre est trop long, si cela a du sens. Je pense que cest plus simple de le faire avec titleps
:
\documentclass[a4paper, twoside, swedish]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{geometry} \usepackage{babel} \usepackage{lipsum} \usepackage{titleps} \newpagestyle{mine}{% \large \headrule \sethead[\itshape\thesection.\enspace\MakeUppercase{\sectiontitle}][][\itshape Studiehandledning \date{\today}]% {\itshape Studiehandledning \date{\today}}{}{\itshape\thesubsection\enspace\subsectiontitle} \setfoot{}{\thepage}{} }% \title{Studiehandledning till kursen \\ xxxxx} \pagestyle{mine} \begin{document} \maketitle \newpage \section{bla bla} \lipsum \subsection{skalleper} \lipsum \section{wlä wlä wlä} \lipsum \section[olika oolika grrrumph]{olika ffgfd rgrgreg rgdsfgdsfgrd gsdgsdg gsrgrg} \lipsum \subsection[olika oolika pfffyiæð] {olika oolika ffgfd rgrgreg rgdsfgdsfgrd gsdgsdg gsrgrg} \lipsum \end{document}
Ce code ne fonctionne que pour les documents recto verso, en raison de lutilisation des 3 arguments facultatifs de \sethead
.
Ajouté 2 : Pour les documents unilatéraux, vous pouvez obtenir le même résultat avec le package \ifoddpage
et ce code :
\usepackage{isoddpage} \sethead{\itshape Studiehandledning \date{\today}}{}% {\checkoddpage% \itshape\ifoddpage\thesubsection\enspace\subsectiontitle\else\thesection.\enspace\MakeUppercase{\sectiontitle}\fi} \setfoot{}{\thepage}{} }%
Commentaires
- Oui, cest bien " Solution 1 "!
\fancyhf{}
signifie-t-il que tous les autres en-têtes doivent être ignorés? - Je suppose que " Solution 2 " est beaucoup plus compliqué?
- Vous voulez les titres des sous-sections et votre texte sur la même page? les titres des sections? ils vont quelque part, ou il ne devrait pas y en avoir? Est-ce pour un document recto verso ou unilatéral?
- Je ' d le dire ' est plus facile avec
titleps
(qui vient avectitlesec
) car on na pas à lutter avec les marques. Je ' Je publierai un code dans un instant. Les longueurs de vos sous-sections sont-elles réalistes? Vous pouvez utiliser largument facultatif pour avoir des titres plus courts. - (1): Non, cela a gagné ' t. Jai ' posté un autre code pour les documents unilatéraux (2) Vous devez le faire à la main, avec un code comme
\section[short title]{A much longer title}
. (3) Vous mettez tout ce que vous voulez dans len-tête (sauf les flottants…): images, tableaux. Habituellement, vous ' devez changer la valeur de\headheight
. Cela peut se faire au prix dun viol des règles typographiques.