Aiuto Fancyhdr, margini per tesi

  • Creatore
    Topic
  • #100886
    Up
    0
    Down
    ::


    Buonasera, sto scrivendo la tesi e sono incasinato con i margini. Devo rispettare le seguenti norme:

    “L’intestazione della pagina, fatta eccezione la
    prima pagina di un capitolo, deve presentare
    nelle pagine pari la dicitura Capitolo ed il
    relativo numero, nelle pagine dispari il titolo
    del capitolo, entrambi allineati al margine
    esterno e separati dal testo da una riga
    orizzontale.
    Intestazione e piè di pagina vanno separati
    dalle estremità della pagina di 12 mm.”

    La tesi è scritta in lingua inglese, qualcuno sa aiutarmi ad impostare il fancystyle corretto per rispettare questo regolamento?

    Grazie mille 🙂

Visualizzazione 11 filoni di risposte
  • Autore
    Risposte
    • #100887
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Come fare è spiegato nella documentazione del pacchetto fancyhdr, che certamente tu hai già letto, ma ti è sfuggita la parte che interessa te.

        La parte relativa al fatto che testatina e piedino devono distare dal margine della pagina di 12mm non è chiara; queste cose devono sporgere oltre il il lato esterno della gabbia di stampa? Il numero della pagina dove va scritto visto che le testatine non devono contenere il numero della pagina? forse nel piedino verso il bordo esterno?

        Se questo è quello che vuole la norma del tuo ateneo, allora leggi con attenzione il paragrafo 12 di quella documentazione.

      • #100888
        Up
        0
        Down
        ::


        Ho guardato la documentazione ma non riesco comunque ad ottenere Chapter # nelle pagine pari e “Title of the chapter” in quelle dispari. Riguardo alla numerazione di pagina sì, nel piedino verso il bordo esterno.

        Sto usando:

        \pagestyle{fancy}
        \renewcommand{\chaptermark}[1]{%
        \markboth{
        \ \thechapter.\ #1}{}}

        \fancyhead{}
        \fancyhead[HRE]{\bfseries \rightmark}
        \fancyhead[HLO]{\bfseries \leftmark}
        \fancyfoot[CO,CE]{\thepage}
        \renewcommand{\headrulewidth}{0.1pt}

        però non ottengo quanto desiderato

      • #100889
        Up
        0
        Down
        ::

        marcopolo” post=100609Ho guardato la documentazione ma non riesco comunque ad ottenere Chapter # nelle pagine pari e “Title of the chapter” in quelle dispari. Riguardo alla numerazione di pagina sì, nel piedino verso il bordo esterno.

        Sto usando:

        \pagestyle{fancy}
        \renewcommand{\chaptermark}[1]{%
        \markboth{
        \ \thechapter.\ #1}{}}

        \fancyhead{}
        \fancyhead[HRE]{\bfseries \rightmark}
        \fancyhead[HLO]{\bfseries \leftmark}
        \fancyfoot[CO,CE]{\thepage}
        \renewcommand{\headrulewidth}{0.1pt}

        però non ottengo quanto desiderato

        Perché non hai letto con attenzione: mi sembra infatti che stai sbagliando diverse cose:

        1. Innanzitutto, lo specificatore H in \fancyhead è ridondante.
        2. Il margine esterno è [EL,OR], non [ER,OL].
        3. [OC,EC] è equivalente al semplice [C], che vuol dire al centro e dunque non nel bordo esterno.
        4. Quando ridefinisci “\chaptermark”, dovresti catturare separatamente il numero del capitolo (diciamo in “\leftmark”) e il suo titolo (diciamo in “\rightmark”.
        5. Infine, tieni presente che un filetto di 0.1pt è davvero molto sottile; ma questo lasciamolo pure stare.

        Insomma, a occhio e croce, direi che dovresti fare così:
        `
        \pagestyle{fancy}
        \renewcommand{\chaptermark}[1]{%
        \markboth
        {\chaptername\ \thechapter}% numero del capitolo in \leftmark
        {#1}% titolo in \rightmark
        }

        \fancyhead{}
        \fancyhead[EL]{\bfseries \leftmark}
        \fancyhead[OR]{\bfseries \rightmark}
        \fancyfoot[EL,OR]{\thepage}
        \renewcommand{\headrulewidth}{0.1pt}
        `
        Ecco un esempio compilabile:
        `
        \documentclass[a4paper]{book}
        \usepackage[T1]{fontenc}
        \usepackage[italian]{babel}
        \usepackage[pass]{geometry} % imposta \pdfpagewidth e \pdfpageheight
        \usepackage{fancyhdr}
        \usepackage{lipsum}

        \title{Gli Gnu nel mondo}
        \author{A.~U.~Tore}

        %%% Inizio impostazioni fancyhdr:

        \pagestyle{fancy}
        \renewcommand{\chaptermark}[1]{%
        \markboth
        {\chaptername\ \thechapter}% numero del capitolo in \leftmark
        {#1}% titolo in \rightmark
        }

        \fancyhf{}
        \fancyhead[EL]{\bfseries \leftmark}
        \fancyhead[OR]{\bfseries \rightmark}
        \fancyfoot[EL,OR]{\thepage}
        \renewcommand{\headrulewidth}{0.1pt}

        %%% Fine impostazioni fancyhdr.

        \begin{document}

        \maketitle

        \tableofcontents

        \chapter{Gnu dell'Africa}

        In Africa ci sono gli gnu. Questo \`{e} un fatto certo, non ho dubbi su
        ci\`{o}.

        \lipsum[1-32]

        \chapter{Gnu dell'Asia}

        Ci sono gnu in Asia? Non lo so mica, ma, a naso, direi di no.

        \lipsum[33-64]

        \end{document}
        `

        Ciao.


        Gustavo

      • #100890
        Up
        0
        Down
        ::


        Grazie mille Gustavo, è esattamente come volevo. Unico problema è che il numero di pagina mi compare sia come desiderato, cioè nel margine esterno a piè di pagina sia al centro (ho due numeri in ogni pagina). Sarà qualche pacchetto che attiva la numerazione centrale?

        Questo è il mio preambolo:
        `
        \documentclass[12pt,twoside]{book}

        \usepackage[english]{babel}
        \usepackage[utf8]{inputenc}
        \usepackage[T1]{fontenc}
        \usepackage{lmodern}
        \usepackage{textcomp}
        \usepackage{fancyhdr}
        \usepackage{indentfirst}
        \usepackage{geometry}
        \geometry{a4paper,top=43mm, bottom=44mm, left=41mm, right=32mm}

        \usepackage{booktabs}
        \usepackage{array}
        \usepackage{multirow}

        \usepackage{graphicx}
        \usepackage{float}
        \usepackage{rotating}
        \usepackage{epstopdf}

        \usepackage{color}
        \usepackage{caption}
        \usepackage{subfigure}
        \usepackage{titling}

        \usepackage{natbib}

        \newcommand{\subtitle}[1]{%
        \posttitle{\par\end{center}
        \begin{center}\huge#1\end{center}
        \vspace*{0.8em}}%
        }

        \pagestyle{fancy}
        \renewcommand{\chaptermark}[1]{%
        \markboth
        {\chaptername\ \thechapter}% numero del capitolo in \leftmark
        {#1}% titolo in \rightmark
        }

        \fancyhead{}
        \fancyhead[EL]{\bfseries \leftmark}
        \fancyhead[OR]{\bfseries \rightmark}
        \fancyfoot[EL,OR]{\thepage}
        \renewcommand{\headrulewidth}{0.1pt}

        \captionsetup{format=hang,labelfont={sf,bf}}
        \setlength\parindent{10pt}
        `

        Grazie ancora

      • #100891
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::



          @marcopolo
          , nella aprte di preambolo che hai mostrato nel tuo messaggio non si vede nulla che metta il numero di pagina al centro; se intendi che nella prima pagina di ogni capitolo, che è composto con lo stile plain, il numero di pagina compare al centro; se lo vuoi al margine esterno devi ridefinire lo stile plain perché si comporti in quel modo; è spiegato nel paragrafo 7 nella pagina 7 della documentazione di fancyhdr.
          Se invece dici che il numero di pagina compare due volte nella stessa pagina, allora, onestamente non so da che cosa sia causato, se non possibilmente da un mancato azzeramento di tutte le testatine e di tutti i piedini; devi leggere con attenzione la documentazione e magari sostituire [tt]\fancyhead{}[/tt] con [tt]\fancyhf{}[/tt].

          Ora permettimi di fare alcune critiche alla parte di preambolo che hai mostrato:
          1) L’opzioe twoside per la classe book è preimpostata e quindi non occorre specificarla.
          2) Chiamare babel con l’opzione english, di per se non sarebbe sbagliato, ma non serve a niente perché LaTeX funziona in inglese “in modo nativo”; diverso sarebbe se volessi specificare UKenglish, o autralian o altre varianti di inglese.
          3) Scrivendo in inglese il primo capoverso non deve essere rientrato (secondo me nemmeno in italiano, ma le norme italiane sono più tolleranti); quindi invocare il pacchetto indentfirst è errato in inglese.
          4) Nessuno ti vieta di usare il pacchetto multirow, ma sarebbe meglio che non lo usassi, perché i risultati sono generalmente peggiori di quello che si può fare senza usarne le funzionalità.
          5) il pacchetto float serve per due scopi: a) definire nuove classi di oggetti flottanti e b) definire l’opzione di collocazione H che non bisogna usare MAI; e MAI vuol dire proprio MAI; se hai biaogno di definire nuove classi di float va bene, ma se vuoi usare solo H, dimenticatene e non caricarlo.
          6) il programma di composizione pdflatex converte da solo i file in formato eps in file in formato pdf, quindi il pacchetto epstopdf è del tutto inutile; pdflatex si comporta in questo modo da almeno 5 anni; se il tuo pdflatex non converte da solo i file eps in file pdf, o è straordinariamente vecchio (e allora sarebbe il caso di aggiornare l’installazione con una TeX Live 2014) oppure non è una versione standard (allora sarebbe il caso di sostituire l’installazione del sistema TeX con una TeX Live 2014 scaricata direttamente dall’archivio CTAN, non dagli archivi Debian o di altre distro Linux).
          7) il pacchetto color è valido, ma sarebbe meglio caricare il pacchetto xcolor, che consente di maneggiare i colori in modo molto più avanzato.
          8 ) Il pacchetto subfigure è obsoleto; oggi si dovrebbe usare soltanto il pacchetto subfig; tra l’altro subfig è parente stretto di caption, quindi i due pacchetti collaborano assieme in modo vantaggioso.

          Queste cose, più o meno, vengono ripetute circa ogni 10 messaggi. Quindi non limitarti a leggere le risposte solo ai tuoi quesiti, ma impari un mucchio di cose leggendo le risposte anche agli altri quesiti.

        • #100892
          Up
          0
          Down
          ::

          marcopolo” post=100615[…] Unico problema è che il numero di pagina mi compare sia come desiderato, cioè nel margine esterno a piè di pagina sia al centro (ho due numeri in ogni pagina). Sarà qualche pacchetto che attiva la numerazione centrale? […]

          No, semplicemente, come ti ha già spiegato OldClaudio, devi sostituire “\fancyhead{}” con “\fancyhf{}”, per “azzerare“ sia la testatina sia il piedino prima di impartire le tue impostazioni. È stata una mia svista di cui mi sono accorto solo compilando l’esempio che ti ho accluso, solo che poi mi sono dimenticato di apportare la correzione anche nell’estratto di codice precedente. L’esempio compilabile era corretto, però! 🙂

          Ciao.


          Gustavo

        • #100893
          Up
          0
          Down
          ::


          Grazie dei consigli OldClaudio e Gustavo! Sono molto utili.

          Riguardo ad ottenere Chapter # nelle pagine pari e “Title of the chapter” in quelle dispari adesso torna tutto, però solo per il primo capitolo. Dal capitolo due in avanti le pagine dispari hanno il nome della section in maiuscolo. Vorrei che tutto fosse come il primo capitolo. E’ possibile fare ciò?

          Inoltre, voi che ve ne intendete di stile, alla fine di ogni capitolo è meglio lasciare una pagina vuota bianca? Per come ho impostato ora le lascia ma con il nome della section… non è che sia molto bello, che ne dite?

          Grazie ancora, mi state aiutando un sacco per la mia tesi.. sono agli sgoccioli e la devo consegnare 🙂 🙂 🙂

        • #100894
          Up
          0
          Down
          ::

          marcopolo” post=100629[…]
          Riguardo ad ottenere Chapter # nelle pagine pari e “Title of the chapter” in quelle dispari adesso torna tutto, però solo per il primo capitolo. Dal capitolo due in avanti le pagine dispari hanno il nome della section in maiuscolo. Vorrei che tutto fosse come il primo capitolo. E’ possibile fare ciò?

          Che strano! Nell’esempio compilabile che ti ho mandato io questo non succede: potresti mandare un esempio minimo compilabile che riproduca il problema?

          Evidentemente, qualcuno (qualcosa) ridefinisce “\chaptermark” dopo il primo capitolo. Cominciamo già ad andare per esclusione: per caso, impartisci, da qualche parte dopo l’inizio del primo capitolo, un’ulteriore dichiarazione`\thispagestyle{fancy}`(ulteriore = oltre a quella data nel preambolo)?

          marcopolo” post=100629
          Inoltre, voi che ve ne intendete di stile, alla fine di ogni capitolo è meglio lasciare una pagina vuota bianca? Per come ho impostato ora le lascia ma con il nome della section… non è che sia molto bello, che ne dite?[…]

          Vecchissima storia: mi sembra di ricordare che c’è un pacchettino apposito che sistema la faccenda delle testatine, che non si vogliono, sulla pagina inserita prima dell’inizio di un nuovo capitolo; solo che non me ne ricordo il nome, perché io sono un «garibaldino» che queste cose se le risolve a mano (ci metto molto meno tempo che a cercare il pacchetto e a leggere come si usa!). Per esempio, puoi includere questo codice nel preambolo (copiato, del resto, da una guida di Enrico Gregorio):
          `
          \makeatletter
          \renewcommand*{\cleardoublepage}{%
          \clearpage
          \if@twoside
          \ifodd\c@page \else
          \null\thispagestyle{empty}\newpage
          \if@twocolumn
          \null\newpage
          \fi
          \fi
          \fi
          }
          \makeatother
          `
          Mi sembra che nel tuo preambolo tu abbia già una sezione “\makeatletter” … “\makeatother”: puoi inserire il codice lì.

          Attento, però, che alcuni regolamenti per le tesi richiedono di specificare alla classe book l’opzione openany, che lascia iniziare i capitoli anche su una pagina pari; questo perché si vuole contenere il numero totale di pagine.

          Ciao.


          Gustavo

        • #100895
          Up
          0
          Down
          ::


          Il pacchetto a cui si riferisce @letteracdp si chiama [tt]emptypage[/tt]. È sufficiente caricarlo nel preambolo per osservarne l’effetto.

        • #100896
          Up
          0
          Down
          ::


          Grazie, skevin93: prometto che ora me lo ricorderò! (era anche facile…) 🙂

          Ciao.


          Gustavo

        • #100897
          Up
          0
          Down
          ::


          Mi sbagliavo, lo fa anche per il Capitolo 1 solo che non avendo Section non lo notavo. Ecco l’esempio compilabile:
          `
          \documentclass[12pt,twoside]{book}

          \usepackage[english]{babel}
          \usepackage[utf8]{inputenc}
          \usepackage[T1]{fontenc}
          \usepackage{lmodern}
          \usepackage{textcomp}
          \usepackage{fancyhdr}
          \usepackage{indentfirst}
          \usepackage{geometry}
          \geometry{a4paper,top=43mm, bottom=44mm, left=41mm, right=32mm}

          \usepackage{booktabs}
          \usepackage{array}
          \usepackage{multirow}

          \usepackage{graphicx}
          \usepackage{float}
          \usepackage{rotating}
          \usepackage{epstopdf}

          \usepackage{color}
          \usepackage{caption}
          \usepackage{subfigure}
          \usepackage{titling}

          \usepackage{natbib}

          \newcommand{\subtitle}[1]{%
          \posttitle{\par\end{center}
          \begin{center}\huge#1\end{center}
          \vspace*{0.8em}}%
          }

          \pagestyle{fancy}
          \renewcommand{\chaptermark}[1]{%
          \markboth
          {\chaptername\ \thechapter}% numero del capitolo in \leftmark
          {#1}% titolo in \rightmark
          }

          %\fancyhead{}
          \fancyhf{}
          \fancyhead[EL]{\bfseries \leftmark}
          \fancyhead[OR]{\bfseries \rightmark}
          %\fancyfoot[EC,OC]{\thepage}
          \fancyfoot[EL,OR]{\thepage}
          \renewcommand{\headrulewidth}{0.3pt}

          \captionsetup{format=hang,labelfont={sf,bf}}
          \setlength\parindent{10pt}

          %\usepackage{appendix}
          %\newcommand{\annexname}{Annex}
          %\makeatletter
          %\newcommand\annexes{\clearpage
          %\setcounter{chapter}{0}
          %\renewcommand\appendixname{Annex}
          %\renewcommand\appendixpagename{Annexes}
          %\renewcommand{\appendixtocname}{Annexes}
          %\gdef\@chapapp{\annexname}
          %\gdef\thechapter{\@Roman\c@chapter}
          %\renewcommand{\theHchapter}{\annexname.\thechapter}
          %\addappheadtotoc
          %}
          %\makeatother

          \usepackage[colorlinks=true,linkcolor=blue]{hyperref}

          \begin{document}
          \thispagestyle{empty}
          % Inizio del Frontespizio

          \enlargethispage{60mm}
          \begin{center}

          Frontespizio

          \end{center}
          \begin{normalsize}
          \newpage
          \thispagestyle{empty}

          \newpage
          %\frontmatter
          %\pagenumbering{Roman}
          %\tableofcontents
          %
          %% Elenco delle Figure
          %\addcontentsline{toc}{section}{\listfigurename}
          %\listoffigures
          %\clearpage
          %
          %% Elenco delle Tabelle
          %\addcontentsline{toc}{section}{\listtablename}
          %\listoftables
          %\clearpage

          \mainmatter
          \chapter{Introduction}
          \pagenumbering{arabic}
          \setcounter{page}{1}
          introintrointrointrointrointrointrointro
          introintrointrointrointrointrointrointro
          introintrointrointrointrointrointrointro
          introintrointrointrointrointrointrointro

          \newpage

          introintrointrointrointrointrointrointro
          introintrointrointrointrointrointrointro
          introintrointrointrointrointrointrointro
          introintrointrointrointrointrointrointro

          \section{Objectives}
          objobjobjobjobjobjobjobjobjobjobjobjobj
          objobjobjobjobjobjobjobjobjobjobjobjobj
          objobjobjobjobjobjobjobjobjobjobjobjobj

          \newpage

          objobjobjobjobjobjobjobjobjobjobjobjobj
          objobjobjobjobjobjobjobjobjobjobjobjobj
          objobjobjobjobjobjobjobjobjobjobjobjobj

          \chapter{Description}
          DescrDescrDescrDescrDescrDescrDescrDescr
          DescrDescrDescrDescrDescrDescrDescrDescr
          DescrDescrDescrDescrDescrDescrDescrDescr

          \section{Detail Description}
          DetDetDetDetDetDetDetDetDetDetDetDetDet
          DetDetDetDetDetDetDetDetDetDetDetDetDet
          DetDetDetDetDetDetDetDetDetDetDetDetDet

          \newpage

          DetDetDetDetDetDetDetDetDetDetDetDetDet
          DetDetDetDetDetDetDetDetDetDetDetDetDet
          DetDetDetDetDetDetDetDetDetDetDetDetDet

          \newpage

          DetDetDetDetDetDetDetDetDetDetDetDetDet
          DetDetDetDetDetDetDetDetDetDetDetDetDet
          DetDetDetDetDetDetDetDetDetDetDetDetDet
          \chapter{Conclusions and Future Developments}
          aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
          aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
          aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

          \section{Conclusions}
          ccccccccccccccccccccccccccccccccccc
          ccccccccccccccccccccccccccccccccccc
          ccccccccccccccccccccccccccccccccccc

          \end{normalsize}
          \end{document}`

          Come vedi, quando sei dentro a una Section, compare in alto a destra il nome della Section tutto maiuscolo invece che il nome del capitolo… Non ho altre thispagestyle{fancy}.

          [Attento, però, che alcuni regolamenti per le tesi richiedono di specificare alla classe book l’opzione openany, che lascia iniziare i capitoli anche su una pagina pari; questo perché si vuole contenere il numero totale di pagine.] –> Il regolamento dice che ogni capitolo deve iniziare nelle pagine dispari, quindi dite di usare emptypage? (o la versione manuale di Gustavo 😛 )?

          Grazie 🙂

        • #100898
          Up
          0
          Down
          ::


          Mi viene in mente solo adesso un’ovvietà: oltre a ridefinire “\chatermark”, bisogna anche disattivare “\sectionmark”! Scusa, stavolta ho fatto confusione io. 🙁 Allora:
          `
          \pagestyle{fancy}
          \renewcommand*{\chaptermark}[1]{%
          \markboth
          {\chaptername\ \thechapter}% numero del capitolo in \leftmark
          {#1}% titolo in \rightmark
          }
          \renewcommand*{\sectionmark}[1]{} % mancava questo!

          \fancyhf{}
          \fancyhead[EL]{\bfseries \leftmark}
          \fancyhead[OR]{\bfseries \rightmark}
          \fancyfoot[EL,OR]{\thepage}
          \renewcommand{\headrulewidth}{0.1pt}
          `
          Ora dovrebbe funzionare.

          Riguardo a emptypage, uso quello: non fa altro che ridefinire “\cleardoublepage” allo stesso modo del codice manuale che ho spedito.

          Ciao.


          Gustavo

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

      Go to top