- Questo topic ha 7 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 19 anni, 2 mesi fa da
egreg9.
-
CreatoreTopic
-
27 Giugno 2007 alle 0:49 #15549::
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!
-
CreatoreTopic
-
AutoreRisposte
-
-
27 Giugno 2007 alle 4:35 #15550
-
27 Giugno 2007 alle 8:27 #15551
-
27 Giugno 2007 alle 10:04 #15552::
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
-
27 Giugno 2007 alle 10:21 #15553::
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!
-
27 Giugno 2007 alle 10:37 #15554::
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
-
28 Giugno 2007 alle 10:30 #15555::
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
-
28 Giugno 2007 alle 11:15 #15556::
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
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.