Як видалити порожні сторінки між двома розділами Додатка?


90

Чи є спосіб видалити порожні сторінки, що з’являються між двома главами, у Додатку?

Відповіді:


126

Ваша проблема полягає в тому, що всі глави, незалежно від того, знаходяться вони у додатку чи ні, за замовчуванням починаються з непарної сторінки, коли ви перебуваєте в режимі двостороннього макетування. Кілька можливих рішень:

Найпростішим рішенням є використання openanyопції для вашого класу документа, що змушує глави починатися з наступної сторінки, незалежно від того, непарна це чи парна сторінка. Це підтримується у стандартному класі документів, наприклад \documentclass[openany]{book}. ( memoirтакож підтримує використання цього як декларації, \openanyяка може бути використана в середині документа для зміни поведінки наступних сторінок.)

Інший варіант - спробувати \let\cleardoublepage\clearpageкоманду перед вашими додатками, щоб уникнути поведінки.

Або, якщо вам все одно використовувати двосторонній макет, використання опції onesideдля вашого documentclass(наприклад \documentclass[oneside]{book}) переключиться на використання одностороннього макета.


4
Ваше визначення видалить ВСІ розриви сторінок. \ let \ cleardoublepage \ clearpage, ймовірно, буде більше націленим.
Девід Ханак,

1
Який документ-клас ви використовуєте?
Ной

Я спробував за допомогою bookі scrbook, але це працює, лише якщо ви введете команду в преамбулу.
мастило

Я ставлю \ let \ cleardoublepage \ clearpage після \ appendix, і він чудово працює з книгою як classclass. Дякую!
user1736049

2
Мені потрібні двосторонній макет для мого налаштування, але я не хочу всіх порожніх сторінок. Відкритий підхід спрацював як шарм. Дякую :)
OptimusCrime

85

це дуже просто:

додайте \documentclass[oneside]{book} і все в порядку;)


@frederic: Справді блискуче рішення. Дуже дякую !
Сандіп Сінгх,

11
Зверніть увагу, що цей метод робить поля всіх сторінок однаковими. У двох сторонах поля відрізняються для непарних і парних сторінок.
аміт

7
Як згадував Федр, якщо ви друкуєте дипломну роботу, вам, як правило, потрібні різні ліві / праві поля, для яких вам потрібно використовувати двосторонній варіант.
kufudo 03.03.13

1
спасибі, у моєму випадку заміна \documentclass[report,12pt]{memoir}на \documentclass[oneside,12pt]{memoir}допомогу
Ольга

На додаток до питання згаданої Федрі, onesideопція також викликає fancyhdrігнорувати налаштування для парних сторінок призводить до помилок , як це: Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is useless on input line 6791. Тож openanyваріант набагато кращий у цьому випадку, оскільки він впливає лише на розташування кожного нового розділу, замість того, щоб впливати на поля та чергування заголовків / колонтитулів.
Рафал

22

Я спробував пропозицію Ноя, яка веде до найкращого рішення на сьогоднішній день.

Просто вставте \let\cleardoublepage\clearpageперед усіма частинами порожні сторінки, особливо коли ви використовуєте\documentclass[12pt,a4paper]{book}

Поради frederic snyers \documentclass[oneside]{book}також дуже хороші і вирішують проблему, але якщо ми просто хочемо використовувати book.cls або article.cls, то це матиме велике значення, представляючи ваші частинки.

Отже, велика підтримка \let\cleardoublepage\clearpageлюдям, які поставлять те саме питання в майбутньому.


куди слід вставити \ let \ cleardoublepage \ clearpage? наприклад, до \ include {chapter2} у main.tex?
AshKan

просто помістіть у місце, де ви хочете видалити порожню сторінку, наприклад, порожню сторінку в певному розділі, ви можете спробувати поставити після \ begin {document}
Mike22LFC

Для мене це прекрасно працювало всередині \ begin {document} і безпосередньо перед \ tableofcontents. Дякую.
OSXMonk

15

Якщо ви вкажете параметр "відкриття" в декларації \ documentclass, кожен розділ книги (я думаю, ви використовуєте клас книги як розділи, відкриті на наступній сторінці у звітах, а статті не мають розділів) відкриється нову сторінку, не обов'язково наступну непарну сторінку.

Звичайно, це не зовсім те, що ви хочете. Я думаю, ви хочете встановити відкриття для розділів у додатку. `` Боже, я не знаю, як це зробити, я підозрюю, що вам потрібно закатати рукави і боротися з самим TeX


3

Я поставив \let\cleardoublepage\clearpageпопереднє \makeindex. В іншому випадку на вашій сторінці вмісту відображатиметься номер сторінки на основі номера сторінки, перш ніж очистити порожню сторінку.


3

Одне, що я виявив, - це те, що за допомогою команди \ include часто вставляється додаткова порожня сторінка. Рифуючи попередній фокус за допомогою команди \ let, я вставив \ let \ include \ input біля початку документа, і це позбулося більшості надмірних порожніх сторінок.


3
Велике спасибі за вашу відповідь. Жоден з попередніх методів у мене не спрацював. Я замінив \ include на \ input, і він у мене спрацював!
Салі Ху

Це спрацювало і для мене - використовуючи трохи змінений клас звіту Koma Script. Будь-яка ідея, чому \ include це робить? Як налагодити точну проблему?
SACHIN GARG

-1 Я вважаю, що може бути найбільш розумним просто використовувати, \inputякщо це те, що вам потрібно, а не переосмислювати \includeце. Я думаю, що tex.stackexchange.com/questions/246/… пояснює, чому це відбувається. Це тому \include, що призначено робити більше, ніж просто копіювати та вставляти текст у документ.
andyg0808

2

У моєму випадку я все ще хотів відкрити для непарних сторінок опцію, але це дало б пусту сторінку з назвою глави в заголовку. Я не хотів заголовка. Тому, щоб уникнути цього, я використав це в кінці глави:

\clearpage

\thispagestyle{plain}

Це дозволить вам зберегти порожню сторінку на останній парній сторінці розділу, але без заголовка.


1

Ви також можете використовувати \openany, \openrightі \openleftкоманди:

\documentclass{memoir}
\begin{document}

\openany
\appendix

\openright
\appendixpage
This is the appendix.

\end{document}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.