2009-08-31 15 views
23

Come rimuovere una pagina vuota che viene aggiunta automaticamente dopo \ part {} o \ chapter {} in una classe di un documento?LaTeX: rimuove la pagina vuota dopo un part o chapter

Ho bisogno di aggiungere un breve testo che descrive la \ parte. L'aggiunta del testo dopo i risultati del comando partecipato ad almeno 3 pagine con una pagina vuota tra il titolo parte e il testo:

  1. parte XX
  2. (vuoto)
  3. un testo

Come sbarazzarsi di quella pagina vuota?

P.S. Latex: How to remove blank pages coming between two chapters IN Appendix? è simile ma cambia il comportamento per il resto del testo mentre devo rimuovere la pagina vuota solo per questo comando \ par.

risposta

11

Una soluzione che funziona:

Avvolgere la parte del documento che ha bisogno di questo comportamento modificato con il codice fornito di seguito . Nel mio caso la porzione da avvolgere è una \ part {} e del testo che la segue.

\makeatletter\@openrightfalse 
\part{Whatever} 

Some text 

\chapter{Foo} 
\@openrighttrue\makeatother 

La porzione spostata deve includere anche il capitolo all'inizio del quale questo comportamento deve essere interrotto. In caso contrario, LaTeX potrebbe generare una pagina vuota prima di questo capitolo.

Fonte: gente al canale IRC su irc.freenode.net #latex

+0

ah ... vedo. era questo il primo comando \ part del tuo documento? Ho provato una variante della mia risposta sopra incaed in \ makeletter & \ makeother nel preambolo, e ha funzionato per tutto tranne la prima sezione. – Mica

+1

no, è la seconda parte dei tre. sia la prima che la terza parte rimangono come erano, inalterate. O stai dicendo che questa soluzione non avrebbe funzionato se avevo bisogno di modificare il 1 ° \ parte? – CaptSolo

+1

brillante, la mia "risposta del mese" :) – Ingo

1

Credo che nella classe del libro tutti \ part e \ chapter siano impostati per iniziare su una pagina recto.

da book.cls:

\newcommand\part{% 
    \[email protected] 
    \cleardoublepage 
    \else 
    \clearpage 
    \fi 
    \thispagestyle{plain}% 
    \[email protected] 
    \onecolumn 
    \@tempswatrue 
    \else 
    \@tempswafalse 
    \fi 
    \null\vfil 
    \secdef\@part\@spart} 

si dovrebbe essere in grado di rinnovare quel comando, e qualcosa di simile per il \ capitolo.

+1

ho cercato il suo suggerimento sostituendo il \ se @ openright blocco con \ clearpage (dal momento che so che @openright non è definito), ma non ha funzionato - \ parte {} s dopo questa definizione trasformato in spazzatura .. Grazie per il suggerimento, sembra un buon modo per andare. Potresti suggerire come farlo funzionare? – CaptSolo

+0

se avete qualcosa come \ documentclass [12pt, twoside] {book}, cambiate twoside a lato. lo ha fatto per me, e qualcuno mi ha corretto se sbaglio, ma credo che l'unica cosa che cambierà a parte la \ cleardoublepage sarebbero i margini, che è una differenza che ho trovato a cui nessuno importa. – Mica

+2

Questo non risponderebbe alla mia domanda sulla modifica del comportamento localmente, per una singola istanza di \ part {} e non per l'intero documento. Tuttavia, ho la soluzione ora. Lo pubblicherà qui sotto. – CaptSolo

8

Non si dice che classe si sta utilizzando, ma suppongo che sia lo standard book. In tal caso, la cancellazione della pagina è una caratteristica della classe he che può essere annullata come Mica suggests oppure risolta passando a un'altra classe. La classe standard report è simile a book oppure the memoir class è un miglioramento book ed è davvero molto flessibile.

+0

non è sicuro se vuole cambiare classi di documenti, ma vi consiglio di classe memoir così, ho trovato abbastanza facile da controllare la maggior parte degli aspetti del layout con essa, la documentazione è eccellente e va * molto * di profondità. – Mica

+1

Sono cauto nel cambiare le classi di documenti perché ho bisogno di concentrarmi sulla scrittura in questo momento e non esplorare LaTeX. ma se passare al memoir è senza soluzione di continuità, potrei provare a farlo. – CaptSolo

32

Penso che si possa semplicemente aggiungere l'opzione oneside alla classe del libro?

cioè

\documentclass[oneside]{book} 

Anche se non ho la prova che :)

+1

Ho bisogno di questa modifica localmente, solo per una sola istruzione \ part {}. – CaptSolo

+0

Questo mi ha aiutato, vi ringrazio molto :) – danr

+0

E me, grazie dudeeeee: D – Kemo

6

Anche se immagino che non hanno bisogno di una risposta più, sto dando la soluzione per coloro che verranno a vedere questo post.

Derivato da book.cls

\def\@endpart{\vfil\newpage 
       \[email protected] 
       \null 
       \thispagestyle{empty}% 
       \newpage 
       \fi 
       \[email protected] 
       \twocolumn 
       \fi} 

È "\ newpage" alla prima linea di questo frammento che aggiunge una pagina vuota ridondante dopo la pagina intestazione parte. Quindi devi ridefinire il comando \ @endpart.Aggiungi il seguente snippet all'avvio del tuo file tex.

\makeatletter 
\renewcommand\@endpart{\vfil 
       \[email protected] 
       \null 
       \thispagestyle{empty}% 
       \newpage 
       \fi 
       \[email protected] 
       \twocolumn 
       \fi} 
\makeatother 
+0

Questo non ha alcun effetto sul mio documento, qualcosa sembra mancare qui. – Zelphir

-4

Lo so che è un po 'tardi, ma ho appena imbattuto in questo post e volevo dire che io non vedo modo tutti vogliono farlo in un modo difficile ... Il problema qui è solo che la classe del libro prende il twoside come default, quindi, come ha detto gromgull, basta passare da parte a parte come argomento ed è risolto.

+4

La domanda era come fare questo per una particolare parte o capitolo, lasciando il resto del documento come prima. – CaptSolo

23

lascia le pagine in bianco in modo che una nuova parte o un capitolo iniziano sul lato destro. È possibile risolvere questo problema con l'opzione "openany" per la classe del documento. ;)

+1

La soluzione più semplice e probabilmente la migliore per questa domanda. Grazie. – Zelphir

+0

Questo ha funzionato per me come '[oneside]' ha cambiato anche i miei titoli e margini, mentre questo non ha funzionato. – dantiston

Problemi correlati