capitoli in ogni pagina

  • Creatore
    Topic
  • #15549
    Up
    0
    Down
    ::


    salve a tutt,

    sto scrivendo un documento latex, con classe book (o scrbook), che contiene tantissimi capitoletti.

    vorrei che i capitoli iniziassero in ogni pagina, e non solo nelle pagine dispari; come posso fare?

    ho cercato sul forum, ed ho trovato solo la risposta domanda inversa, ma non a questa…

    grazie!

Visualizzazione 6 filoni di risposte
  • Autore
    Risposte
    • #15550
      Up
      0
      Down
      ::


      Metti openany nelle opzioni della classe.

    • #15551
      Up
      0
      Down
      ::

      Metti openany nelle opzioni della classe.

      è quasi quello che voglio: così apre tutto a ogni pagina, ma questo è troppo: io vorrei ancora che \part iniziasse su una pagina dispari e fosse seguito da una pagina bianca. come posso fare?

      grazie!

    • #15552
      DMW
        Up
        0
        Down
        ::

        Metti openany nelle opzioni della classe.

        è quasi quello che voglio: così apre tutto a ogni pagina, ma questo è troppo: io vorrei ancora che \part iniziasse su una pagina dispari e fosse seguito da una pagina bianca. come posso fare?

        grazie!

        Questa è una delle richieste più strane che ho visto.
        Comunque eccoti un esempio
        `
        \documentclass[openany]{book}
        \usepackage{ifthen}
        \let\origcleardoublepage\cleardoublepage
        \newcommand{\clearemptydoublepage}{%
        \clearpage
        {\pagestyle{empty}\origcleardoublepage}%
        }
        \let\cleardoublepage\clearemptydoublepage
        \newcommand{\mypart}[2][]{\ifthenelse{\isodd{\value{page}}}
        {\part[#1]{#2}\cleardoublepage}{\clearpage\part[#1]{#2}\cleardoublepage}}
        \begin{document}
        \mypart{prima}
        \chapter{uno}
        \chapter{due}
        \mypart{seconda}
        \chapter{tre}
        \end{document}

        `

        Naturalmente non mi chiedere perché tra il capitolo due e la parte seconda non c’è una pagina vuota, perché tu vuoi \part in pagine dispari. Quindi, se il capitolo termina in una pagina pari, c’è subito \part, mentre, se il capitolo termina in una pagina dispari, il comando aggiunge una pagina vuota e poi \part nella pagina dispari successiva.

        Di più non posso fare.

        Ciao

        Andrea

      • #15553
        Up
        0
        Down
        ::

        Questa è una delle richieste più strane che ho visto.

        che c’è di strano? è un libro che contiene poche parti (due o tre), e tantissimi capitoletti di poche pagine, alcuni addirittura di mezza, per cui è normale che io voglia evidenziare molto l’inizio, diciamo, della seconda parte, senza però buttare via una pagina sì e una pagina no (salviamo gli alberi!).

        Comunque eccoti un esempio
        `
        \documentclass[openany]{book}
        \usepackage{ifthen}
        \let\origcleardoublepage\cleardoublepage
        \newcommand{\clearemptydoublepage}{%
        \clearpage
        {\pagestyle{empty}\origcleardoublepage}%
        }
        \let\cleardoublepage\clearemptydoublepage
        \newcommand{\mypart}[2][]{\ifthenelse{\isodd{\value{page}}}
        {\part[#1]{#2}\cleardoublepage}{\mbox{}\clearpage\part[#1]{#2}\cleardoublepage}}
        \begin{document}
        \mypart{prima}
        \chapter{uno}
        \chapter{due}
        \mypart{seconda}
        \chapter{tre}
        \end{document}

        `

        Naturalmente non mi chiedere perché tra il capitolo due e la parte seconda non c’è una pagina vuota, perché tu vuoi \part in pagine dispari. Quindi, se il capitolo termina in una pagina pari, c’è subito \part, mentre, se il capitolo termina in una pagina dispari, il comando aggiunge una pagina vuota e poi \part nella pagina dispari successiva.

        Di più non posso fare.

        Ciao

        Andrea

        quasi perfetto! la posizione delle pagine ora è perfetta, io però non voglio vedere la scritta “Parte I”, per questo avevo usato \part*.

        ho provato a mettere gli asterischi nel codice che hai scritto tu, ma a quanto pare è una sciocchezza, non è il modo giusto di fare.

        suggerimenti?

        razie per l’aiuto!

      • #15554
        DMW
          Up
          0
          Down
          ::

          Questa è una delle richieste più strane che ho visto.

          che c’è di strano? è un libro che contiene poche parti (due o tre), e tantissimi capitoletti di poche pagine, alcuni addirittura di mezza, per cui è normale che io voglia evidenziare molto l’inizio, diciamo, della seconda parte, senza però buttare via una pagina sì e una pagina no (salviamo gli alberi!).

          Comunque eccoti un esempio
          `
          \documentclass[openany]{book}
          \usepackage{ifthen}
          \let\origcleardoublepage\cleardoublepage
          \newcommand{\clearemptydoublepage}{%
          \clearpage
          {\pagestyle{empty}\origcleardoublepage}%
          }
          \let\cleardoublepage\clearemptydoublepage
          \newcommand{\mypart}[2][]{\ifthenelse{\isodd{\value{page}}}
          {\part[#1]{#2}\cleardoublepage}{\mbox{}\clearpage\part[#1]{#2}\cleardoublepage}}
          \begin{document}
          \mypart{prima}
          \chapter{uno}
          \chapter{due}
          \mypart{seconda}
          \chapter{tre}
          \end{document}

          `

          Naturalmente non mi chiedere perché tra il capitolo due e la parte seconda non c’è una pagina vuota, perché tu vuoi \part in pagine dispari. Quindi, se il capitolo termina in una pagina pari, c’è subito \part, mentre, se il capitolo termina in una pagina dispari, il comando aggiunge una pagina vuota e poi \part nella pagina dispari successiva.

          Di più non posso fare.

          Ciao

          Andrea

          quasi perfetto! la posizione delle pagine ora è perfetta, io però non voglio vedere la scritta “Parte I”, per questo avevo usato \part*.

          ho provato a mettere gli asterischi nel codice che hai scritto tu, ma a quanto pare è una sciocchezza, non è il modo giusto di fare.

          suggerimenti?

          razie per l’aiuto!

          O usi il pacchetto titlesec (soluzione migliore), oppure puoi scrivere, subito dopo \documentclass, questo codice:
          `
          \makeatletter
          \def\@part[#1]#2{%
          \ifnum \c@secnumdepth >-2\relax
          \refstepcounter{part}%
          \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
          \else
          \addcontentsline{toc}{part}{#1}%
          \fi
          \markboth{}{}%
          {\centering
          \interlinepenalty \@M
          \normalfont
          \ifnum \c@secnumdepth >-2\relax
          \huge\bfseries\thepart
          \par
          \vskip 20\p@
          \fi
          \Huge \bfseries #2\par}%
          \@endpart}
          \def\@spart#1{%
          {\centering
          \interlinepenalty \@M
          \normalfont
          \Huge \bfseries #1\par}%
          \@endpart}
          \makeatother
          `

          Ciao

          Andrea

        • #15555
          DMW
            Up
            0
            Down
            ::

            Questa è una delle richieste più strane che ho visto.

            che c’è di strano? è un libro che contiene poche parti (due o tre), e tantissimi capitoletti di poche pagine, alcuni addirittura di mezza, per cui è normale che io voglia evidenziare molto l’inizio, diciamo, della seconda parte, senza però buttare via una pagina sì e una pagina no (salviamo gli alberi!).

            Comunque eccoti un esempio
            `
            \documentclass[openany]{book}
            \usepackage{ifthen}
            \let\origcleardoublepage\cleardoublepage
            \newcommand{\clearemptydoublepage}{%
            \clearpage
            {\pagestyle{empty}\origcleardoublepage}%
            }
            \let\cleardoublepage\clearemptydoublepage
            \newcommand{\mypart}[2][]{\ifthenelse{\isodd{\value{page}}}
            {\part[#1]{#2}\cleardoublepage}{\mbox{}\clearpage\part[#1]{#2}\cleardoublepage}}
            \begin{document}
            \mypart{prima}
            \chapter{uno}
            \chapter{due}
            \mypart{seconda}
            \chapter{tre}
            \end{document}

            `

            Naturalmente non mi chiedere perché tra il capitolo due e la parte seconda non c’è una pagina vuota, perché tu vuoi \part in pagine dispari. Quindi, se il capitolo termina in una pagina pari, c’è subito \part, mentre, se il capitolo termina in una pagina dispari, il comando aggiunge una pagina vuota e poi \part nella pagina dispari successiva.

            Di più non posso fare.

            Ciao

            Andrea

            quasi perfetto! la posizione delle pagine ora è perfetta, io però non voglio vedere la scritta “Parte I”, per questo avevo usato \part*.

            ho provato a mettere gli asterischi nel codice che hai scritto tu, ma a quanto pare è una sciocchezza, non è il modo giusto di fare.

            suggerimenti?

            razie per l’aiuto!

            Ho fatto un po’ di prove e non è perfetto.

            Sostituisci, alla definizione precedente, questa:
            `
            \newcommand{\mypart}[2][]{\clearpage\ifthenelse{\isodd{\value{page}}}
            {\part[#1]{#2}\cleardoublepage}{\cleardoublepage\part[#1]{#2}\cleardoublepage}}`

            Così le parti iniziano tutte in una pagina dispari, prima non avevo fatto delle prove più articolate.

            Ciao

            Andrea

          • #15556
            Up
            0
            Down
            ::

            Ho fatto un po’ di prove e non è perfetto.

            Sostituisci, alla definizione precedente, questa:
            `\newcommand{\mypart}[2][]{\clearpage\ifthenelse{\isodd{\value{page}}}
            {\part[#1]{#2}\cleardoublepage}{\cleardoublepage\part[#1]{#2}\cleardoublepage}}`

            Così le parti iniziano tutte in una pagina dispari, prima non avevo fatto delle prove più articolate.

            Hai provato a stampare l’indice? Con questo codice non funziona molto bene, perché dando
            `\mypart{Ciao}`
            nell’indice non comparirà il titolo. Infatti quando si specifica
            `\part[]{Ciao}`
            il titolo abbreviato, che va anche nell’indice, è vuoto.

            Soluzioni? Se non si ha la necessità di specificare titoli abbreviati per l’indice, basta eliminare gli argomenti opzionali dalla definizione:
            `\newcommand{\mypart}[1]{%
            \clearpage
            \ifthenelse{\isodd{\value{page}}}{}{\cleardoublepage}%
            \part{#1}\cleardoublepage}`
            Sei la necessità c’è, occorre qualcosa di più complicato per riconoscere se l’argomento opzionale è vuoto oppure no:
            `\newcommand{\mypart}[2][]{%
            \clearpage
            \ifthenelse{\isodd{\value{page}}}{}{\cleardoublepage}%
            \part[\if!#1!#2\else#1\fi]{#2}\cleardoublepage}`
            Funziona a patto che il titolo abbreviato non cominci con un punto esclamativo.

            Nota anche la semplificazione del codice: non occorre ripetere certe cose.

            Ciao
            Enrico

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

        Go to top