Mainmatter 创建空白页

Mainmatter 创建空白页

我目前正在写我的学士论文,我有点困惑为什么 \mainmatter 在我的表格列表和我的第一章“简介”之间创建了一个空白页。我使用 thesisclass 作为我的 documentclass,而 openany 没有帮助。对于目录和标题页,我使用了:

\frontmatter
\pagenumbering{roman}

在我使用 \listoftables 命令之后:

\mainmatter
\pagenumbering{arabic}

每当我注释掉 \mainmatter 和 \pagenumbering{arabic} 时,就没有空白页了。

谢谢你!

编辑:我从我的大学得到了一个 LaTeX 模板,它非常复杂,所以我不确定以下内容是否包含所有重要内容,但这里有一个小例子。我有一个 thesisclass.cls 文档,其中包含:

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{thesisclass}
\LoadClass[a4paper,11pt,titlepage,openany]{scrbook}

我的主要 tex 文档包含:

\documentclass{thesisclass}

\includeonly{%
titlepage,
text/introduction,
text/declaration,
text/appendix
}

\begin{document}

\frontmatter
\pagenumbering{roman}
\include{titlepage}

\tableofcontents
\listoffigures \addcontentsline{toc}{chapter}{List of Figures} 
\listoftables  \addcontentsline{toc}{chapter}{List of Tables} 

\mainmatter
\pagenumbering{arabic}


\chapter{Introduction}
blablablablabla

\end{document}

答案1

假设您的自定义类没有重新定义\mainmatter& Co.,并且它们的定义是scrbook,那么问题在于 会\mainmatter检查单面或双面打印,但会忽略openany。您可以通过暂时将相应的标志设置为 false 来欺骗它

\documentclass[openany]{scrbook}

\begin{document}
\frontmatter
foo

\makeatletter
\@twosidefalse
\mainmatter
\@twosidetrue
\makeatother
baz
\end{document}

然而,我不会这么做

即使如此openany,在双面打印中,奇数页在右侧,偶数页在左侧也是很常见的。你在这里似乎要求破坏这种习惯性的页码编号。我认为这是糟糕的风格。

旁注:\frontmatter已经\pagenumbering{roman},并且\mainmatter已经\pagenumbering{arabic},因此无需再次写这些。

答案2

KOMA-Script 作者对此问题的回答可以在以下位置找到:如何防止 scrbook 中的左页出现空白?,“过渡到新的页码样式”部分:

\frontmatter在使用和的过程中更改页码样式时\mainmatter,还可能会插入空白的左页。这种情况恰好发生在前部在右页结束的情况下,例如第 iii 页。由于主要部分始终从第 1 页开始,因此不可避免地必须插入空白的左页。这是因为奇数页始终是右页。如果没有插入空白的左页,双面打印件会在后页(即左页)上打印右页。从此时起,所有边距都将不正确。

由于这个可能产生的空白页是必需的,因此不应将其关闭。当然,这有一些技巧,但我强烈建议不要这样做。如果您不想要这个空白页,您真的不想要双面文档,应该将其设置twoside=false\documentclass

相关内容