Problemino con \fancyhdr

  • Creatore
    Topic
  • #6732
    Up
    0
    Down
    ::


    La configurazione del mio documento è:
    `
    \documentclass[a4paper,12pt]{report}
    `

    1) Ho il seguente codice:

    `
    \usepackage{fancyhdr}
    \pagestyle{fancy}
    % with this we ensure that the chapter and section
    % headings are in lowercase.
    \renewcommand{\chaptermark}[1]{\markboth{#1}{}}
    \renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}}
    \fancyhf{} % delete current setting for header and footer
    \fancyhead[LE,RO]{\bfseries\thepage}
    \fancyhead[LO]{\bfseries\rightmark}
    \fancyhead[RE]{\bfseries\leftmark}
    \renewcommand{\headrulewidth}{0.5pt}
    \renewcommand{\footrulewidth}{0pt}
    \addtolength{\headheight}{0.5pt} % make space for the rule
    \fancypagestyle{plain}{%
    \fancyhead{} % get rid of headers on plain pages
    \renewcommand{\headrulewidth}{0pt} % and the line
    }`

    Ho dei warning riguardo questo codice:

    Mi dice che l’opzione E è inutile senza aver l’opzione twoside. Che cosa devo cancellare per togliere il warning. Tolgo le lettere “LE” e “RE” ? oppure tolgo solo la lettera “E” ?

    Poi mi dice che \headheight è troppo piccola e di aumentarne le dimensioni, e poi sembra dirmi che ha cambiato lui da solo le impostazioni:

    “We now make it that large for the rest of the document, this may cause the page layout to be inconsistent”

    Sapete come faccio a mettere da solo a posto questo problema evitando che sia lui a far casini?

    Grazie mille per l’attenzione.

Visualizzazione 4 filoni di risposte
  • Autore
    Risposte
    • #6733
      Up
      0
      Down
      ::


      Prima domanda: rileggiti la documentazione di Fancyhdr perché esistono un set di macro anche per i documenti oneside.

      Seconda domanda: guarda il log di compilazione e leggi appena sopra il punto in cui trovi la frase che hai riportato: troverai la dimensione minima a cui devi portare la testatina. Sbircia sempre sul manuale e troverai anche il modo di modificare quella.

      Ciao.

    • #6734
      Up
      0
      Down
      ::

      Ho corretto in questo modo e ora sembra ok:

      Versione vecchia:
      `
      \fancyhead[LE,RO]{\bfseries\thepage}
      \fancyhead[LO]{\bfseries\rightmark}
      \fancyhead[RE]{\bfseries\leftmark}
      `

      Versione nuova:
      `
      \fancyhead[RO]{\bfseries\thepage}
      \fancyhead[LO]{\bfseries\rightmark}
      `

      Poi ho anche messo il comando per aumentare la \headheight in modo da togliere quel warning.

      Sono un neofita e non vorrei dire una stupidaggine. Comunque mi sembra che il codice che hai inserito non sia adatto a documenti in oneside (anche perché O sta per Odd, E sta per Even, ovverosia rispettivamente dispari e pari).
      Se non ricordo male è meglio usare un codice del tipo:

      `\lhead{}
      \chead{}
      \rhead{}
      \lfoot{}
      \cfoot{}
      \rfoot{}`

      Se sbaglio, mi corrigerete.

    • #6735
      Up
      0
      Down
      ::


      Ho corretto in questo modo e ora sembra ok:

      Versione vecchia:
      `
      \fancyhead[LE,RO]{\bfseries\thepage}
      \fancyhead[LO]{\bfseries\rightmark}
      \fancyhead[RE]{\bfseries\leftmark}
      `

      Versione nuova:
      `
      \fancyhead[RO]{\bfseries\thepage}
      \fancyhead[LO]{\bfseries\rightmark}
      `

      Poi ho anche messo il comando per aumentare la \headheight in modo da togliere quel warning.

    • #6736
      Up
      0
      Down
      ::


      anche a me da il problema
      `
      Package Fancyhdr Warning: \headheight is too small (12.0pt):
      Make it at least 14.49998pt.
      We now make it that large for the rest of the document.
      This may cause the page layout to be inconsistent, however.`

      Come si può correggere in maniera elegante, cioè vorrei avere una linea decorativa larga come il testo.
      Preambolo

      `
      …….
      \usepackage[binding=.6cm]{layaureo}

      \hyphenation{iper-sta-ti-ca}
      \pagestyle{fancy}\addtolength{\headwidth}{20pt}
      \renewcommand{\chaptermark}[1]{\markboth{\thechapter.\ #1}{}}
      \lhead{\bfseries\nouppercase\leftmark}
      \rhead{\bfseries\thepage}
      \cfoot{}
      ……….`

      Grazie

    • #6737
      Up
      0
      Down
      ::

      Ho corretto in questo modo e ora sembra ok:

      Versione vecchia:
      `
      \fancyhead[LE,RO]{\bfseries\thepage}
      \fancyhead[LO]{\bfseries\rightmark}
      \fancyhead[RE]{\bfseries\leftmark}
      `

      Versione nuova:
      `
      \fancyhead[RO]{\bfseries\thepage}
      \fancyhead[LO]{\bfseries\rightmark}
      `

      Poi ho anche messo il comando per aumentare la \headheight in modo da togliere quel warning.

      Sono un neofita e non vorrei dire una stupidaggine. Comunque mi sembra che il codice che hai inserito non sia adatto a documenti in oneside (anche perché O sta per Odd, E sta per Even, ovverosia rispettivamente dispari e pari).
      Se non ricordo male è meglio usare un codice del tipo:

      `\lhead{}
      \chead{}
      \rhead{}
      \lfoot{}
      \cfoot{}
      \rfoot{}`

      Se sbaglio, mi corrigerete.

      E’ esattamente quello che consigliavo anche io.

      anche a me da il problema
      […]
      Come si può correggere in maniera elegante, cioè vorrei avere una linea decorativa larga come il testo.

      `\setlength{\headheight}{15pt}`ovviamente nel preambolo.

      Ciao.

Visualizzazione 4 filoni di risposte
  • Devi essere connesso per rispondere a questo topic.

Go to top