Tocmai am început să folosesc fancyhead.

Am întâlnit o problema că titlurile subsecțiunii mele sunt plasate pe același rând cu antetul. Dacă titlul subsecțiunii este prea lung, cele două fragmente de text vor fi tipărite una peste alta.

Un astfel de exemplu: introduceți descrierea imaginii aici

Aș fi mulțumit de oricare dintre cele două soluții:

  1. Eliminați titlul subsecțiunii din anteturi
  2. Asigurați-vă că titlul subsectoinului și antetul realizat de mine vor fi pe rânduri diferite. Un fel de soluție cu un tabel, probabil – ca în Obținerea capitolului și secțiunii în \ fancyhead .

Voi atașa cod fals de mai jos:

\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} 

O particularitate este, de asemenea, că numai subsecțiunile apar în antet, nu secțiunile. Dar acest lucru ar putea fi legat de discuția privind paginile pare și impare din Obținerea capitolului și secțiunii din \ fancyhead .

Comentarii

  • Nu sunt sigur ce doriți, întrucât punctele 1 și 2 sunt puțin contradictorii. Doriți sau nu un titlu de subsecțiune? Dar titlurile secțiunilor?
  • Nu este necesar în scopul acestui raport. Prin urmare, două opțiuni. Titlurile secțiunii nu apar în antet – așa cum am scris. Poate că se datorează acestui lucru de pagină impar / pare. Nu ' nu sunt sigur.
  • Dar ce vrei tu , mai exact?
  • Este mai multe despre ceea ce nu vreau să am. Nu vreau să aibă text care să se suprapună / să se suprapună antetul dorit.

Răspuns

Poate că acest cod face ceea ce doresc (numai antetul dvs. și numărul paginii):

\pagestyle{fancy} \fancyhf{} \fancyhead[R]{Studiehandledning \date{\today}} \fancyfoot[C]{\thepage} 

Adăugat:

Propun acest lucru, folosind argumentul opțional al (sub) secțiunii atunci când titlul este prea lung, dacă are sens. Cred că este mai simplu să o faci cu 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} 

introduceți descrierea imaginii aici

introduceți descrierea imaginii aici

Acest cod funcționează numai pentru documente față-verso, datorită utilizării celor 3 argumente opționale ale \sethead.

Adăugat 2 : pentru documentele unilaterale, puteți obține același rezultat cu pachetul \ifoddpage și acest cod :

\usepackage{isoddpage} \sethead{\itshape Studiehandledning \date{\today}}{}% {\checkoddpage% \itshape\ifoddpage\thesubsection\enspace\subsectiontitle\else\thesection.\enspace\MakeUppercase{\sectiontitle}\fi} \setfoot{}{\thepage}{} }% 

Comentarii

  • Da, acesta este într-adevăr " Soluția 1 "! Înseamnă \fancyhf{} că orice alte antete ar trebui ignorate?
  • Presupun că " Soluția 2 " este mult mai complicată?
  • Doriți titluri de subsecțiuni și textul dvs. pe aceeași pagină? titlurile secțiunii? merg undeva, sau nu ar trebui să existe niciunul? Este pentru un document cu două fețe sau un singur document?
  • Eu ' aș spune că ' este mai ușor cu titleps (care vine cu titlesec) deoarece nu trebuie să te lupți cu semnele. ' voi posta un cod într-o clipă. Sunt realiste lungimile subsecțiunilor dvs.? S-ar putea să folosiți argumentul opțional pentru a avea titluri mai scurte.
  • (1): Nu, a câștigat ' t. Am ' am postat un alt cod pentru documentele unilaterale (2) Trebuie să faceți acest lucru manual, cu un cod ca \section[short title]{A much longer title}. (3) Puneți tot ce doriți în antet (cu excepția plutitorilor …): imagini, tabele. De obicei, ' va trebui să modificați valoarea \headheight. S-ar putea să coste o violare a regulilor tipografice.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *