Inserire numero pagina

  • Creatore
    Topic
  • #108676
    Up
    0
    Down
    ::


    Ciao a tutti! Sto scrivendo la tesi con latex e ho preso dalla guida “una mica tanto breve…” il codice per far apparire in alto a sinistra nelle pagine dispari il nome della sezione e in alto a destra nelle pagine pari il nome del capitolo. In questo modo ho che il numero delle pagine si trova in alto a destra nelle pagine dispari e in alto a sinistra in quelle pari. E fin qui tutto bene. Il problema è che nella prima pagina di ogni capitolo non c’è la numerazione. Vorrei che in queste particolari pagine (e solo in queste) ci fosse la numerazione in basso al centro. Come posso fare? Scusate se è una banalità ma non so come uscirne. Il preambolo del mio documento è il seguente:
    `
    \documentclass[a4paper,11pt,twoside]{report}
    \usepackage[utf8]{inputenc}
    \usepackage[italian]{babel}
    \usepackage{amsmath}
    \usepackage{mathrsfs}
    \usepackage{amssymb}
    \usepackage{enumerate}
    \usepackage{listings}
    \usepackage{graphicx}
    \usepackage{geometry}
    \usepackage{amsthm}
    \usepackage{multirow}
    \usepackage{lscape}
    \usepackage{fancyhdr}
    \pagestyle{fancy}
    \renewcommand{\chaptermark}[1]{\markboth{Capitolo \thechapter.\ #1}{}}
    \renewcommand{\sectionmark}[1]{\markright{ \thesection\ #1}}
    \fancyhf{} \fancyhead[LE,RO]{\thepage}
    \fancyhead[LO]{\rightmark}
    \fancyhead[RE]{\leftmark}
    \renewcommand{\headrulewidth}{0.5pt}
    \renewcommand{\footrulewidth}{0pt}
    \addtolength{\headheight}{13.6pt} \fancypagestyle{plain}{
    \fancyhead{}
    \renewcommand{\headrulewidth}{0pt}}
    `

Visualizzazione 5 filoni di risposte
  • Autore
    Risposte
    • #108677
      Up
      0
      Down
      ::


      Ometti la porzione di codice
      `
      \fancypagestyle{plain}{
      \fancyhead{}
      \renewcommand{\headrulewidth}{0pt}
      }
      `
      Nella classe report (e in molte altre) la prima pagina di un capitolo utilizza lo stile di pagina [tt]plain[/tt], che, per impostazione predefinita, stampa solo il numero della pagina in basso al centro; tu, però, con la dichiarazione [tt]\fancypagestyle{plain}{…}[/tt], lo stai ridefinendo in modo tale da non stampare alcunché.

      Alcune altre osservazioni collaterali:

      1. se scrivi in italiano, ti conviene caricare il pacchetto fontenc con l’opzione [tt]T1[/tt], altrimenti la sillabazione delle parole accentate non funziona;
      2. già che ci siamo, potresti provare a caricare il pacchetto lmodern, il quale fa sì che il documento sia composto con i caratteri «Latin Modern», una variante scalabile dei Computer Modern che, secondo molti, è da preferire;
      3. il codice`\addtolength{\headheight}{13.6pt}`è quasi certamente sbagliato; molto probabilmente tu intendi`\setlength{\headheight}{13.6pt}`e, in ogni caso, è meglio, visto che carichi il pacchetto geometry, impostare l’altezza delle testatine per mezzo della dichiarazione [tt]\geometry[/tt], assieme alle altre specifiche del formato di pagina;
      4. fra queste ultime, raccomando vivissimamente di includere sempre l’opzione [tt]heightrounded[/tt].

      Ecco un esempio minimo compilabile:
      `
      \documentclass[a4paper,twoside,11pt]{report}
      \usepackage[T1]{fontenc}
      % \usepackage[utf8]{inputenc} % questo file e` in puro ASCII a 7 bit
      \usepackage{lmodern}
      \usepackage[italian]{babel}
      \usepackage{geometry}
      \usepackage{fancyhdr}

      \usepackage{lipsum} % serve solo a generare il testo “Lorem ipsum…”

      \geometry{
      headheight = 13.6pt,
      heightrounded,
      % altre specifiche del caso
      }

      \fancyhf{}
      \fancyhead[LE,RO]{\thepage}
      \fancyhead[LO] {\rightmark}
      \fancyhead[RE] {\leftmark}
      \renewcommand*{\headrulewidth}{.5pt} % era meglio .4pt, secondo me
      \renewcommand*{\footrulewidth}{0pt}
      \renewcommand*{\chaptermark}[1]{\markboth{Capitolo \thechapter.\ #1}{}}
      \renewcommand*{\sectionmark}[1]{\markright{\thesection\ #1}}

      \pagestyle{fancy}

      \begin{document}

      \chapter{Pippo}
      \lipsum[1-4]
      \section{Pippo e Clarabella}
      \lipsum[5-10]
      \section{Pippo e Basettoni}
      \lipsum[11-16]

      \chapter{Pluto}
      \lipsum[17-32]

      \chapter{Paperino}
      \lipsum[33-36]
      \section{Paperino e Paperina}
      \lipsum[37-48]
      \section{Paperino e Gastone}
      \lipsum[49-56]
      \section{Qui, Quo, Qua e Paperino}
      \lipsum[57-64]

      \end{document}
      `

      Ciao.


      Gustavo

    • #108678
      Up
      0
      Down
      ::


      Ok ora funziona. Grazie mille per tutti i consigli! Già che ci sono te ne chiedo un altro: in realtà vorrei evitare che nel testo ci siano parole spezzate, ovvero vorrei evitare che andasse a capo. C’è un comando?

    • #108679
      Up
      0
      Down
      ::

      sirio_92″ post=108906Ok ora funziona. Grazie mille per tutti i consigli! Già che ci sono te ne chiedo un altro: in realtà vorrei evitare che nel testo ci siano parole spezzate, ovvero vorrei evitare che andasse a capo. C’è un comando?

      Proibire del tutto la sillabazione è una cosa che si può fare, ma in generale è una pessima idea, perché il compito di dividere armoniosamente i capoversi in linee diventa praticamente impossibile se non si accetta di spezzare almeno qualche parola ogni tanto; coloro che avanzano una richiesta del genere «do not clearly understand the rigidity of types», come argutamente recita la citazione di Theodore L. De Vinne riportata a pag. 107 del TeXbook.

      La proibizione assoluta si può ottenere scrivendo`\hyphenpenalty = 10000`nel preambolo, ma è praticamente certo che ciò produrrà una marea di avvertimenti [tt]Overfull \hbox …[/tt]. Un’alternativa più blanda e quindi praticabile, che si limita a scoraggiare fortemente la divisione in sillabe, senza però proibirla del tutto, potrebbe essere quella di scrivere invece
      `
      \hyphenpenalty = \tolerance
      \pretolerance = \tolerance
      `
      sempre nel preambolo. Prova a vedere cosa succede con questa seconda soluzione.

      CIao.


      Gustavo

    • #108680
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Togliere ogni cesura in fin di riga è una fesseria, scusa la parola, ma si può limitare il numero di cesure in diversi modi.

        1) Drastico, anzi più drastico di quanto ti ha suggerito Gustavo è quello di impostare la lingua nohyphenation
        2) Un po meno drastico è quello di impostare una penalità non infinita (10000 per TeX vuol dire infinito) ma superiore al centinaio, magari soltanto 1000, ma comunque altina.
        3) Un terzo è quello di usare il pacchetto microtype che giustifica le righe con altre tecniche per cui è abbastanza frequente che intere pagine siano senza cesure, e che le pagine che ne hanno qualcuna ne abbiano solo una e talvolta due. Ti consiglio fortemente questa soluzione.
        4) Imposti subito dopo \begin{document} la dichiarazione \raggedright; con questo elimini la giustificazione del margine destro, ma non hai nessuna cesura. La composizione è brutta, per un testo con righe relativamente lunghe, come quelle di un libro o di una tesi, ma è accettabile componendo con una giustezza di mezza pagina coma quando si compone con l’opzione twocolumn.

        I comunque ti consiglio il metodo 3, come ho scritto sopra.

        La cesura, avendo stabilito la lingua italiana, se scrivi in italiano, funziona benissimo, non disturba e mantiene la composizione ben giustificata senza ruscelli bianchi che scendono fra le righe attraverso gli spazi interparola, come succede con Word, tanto per non fare esempi. Ma Word, Writer, Pages, e simili non sono compositori tipografici come pdflatex, ma sono dei semplici word processor che non hanno nessuna pretesa di produrre delle belle impaginazioni (e infatti non lo fanno).

      • #108681
        Up
        0
        Down
        ::


        Ok, vi ringrazio. Mi avete convinto, tengo la sillabazione 🙂
        Grazie ancora!

      • #108682
        Up
        0
        Down
        ::

        OldClaudio” post=108911[…]
        1) Drastico, anzi più drastico di quanto ti ha suggerito Gustavo è quello di impostare la lingua nohyphenation
        […]

        Giusto, perbacco! È molto più efficiente, perché TeX non perde nemmeno tempo a inserire dei punti di cesura che poi ignorerà!

        Ciao.


        Gustavo

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

    Go to top