书籍文档类中的 openany 和 oneside 命令

书籍文档类中的 openany 和 oneside 命令

我有以下代码

\documentclass[12pt,a4paper,oneside,openany]{book}
\usepackage[utf8]{inputenc}
 \usepackage[left=1in,right=1in,top=1.25in,bottom=1.25in,headsep=30pt,heightrounded] 
   {geometry}
 \usepackage[x11names, svgnames, dvipsnames]{xcolor}
 \usepackage{amsmath}
 \usepackage{amsfonts}
 \usepackage{amssymb}
 \usepackage{amsthm}
 %==============================================================
 \usepackage{fancyhdr}
 \pagestyle{fancy}
 \fancyhf{}
 \fancyhead[LE,RO]{\thepage}
 \fancyhead[LO]{\small\nouppercase{\rightorleftmark}}
 \fancyhead[RE]{\small\nouppercase{\leftmark}}
 \renewcommand\chaptermark[1]{\markboth{\thechapter\hspace{0.25cm} #1}{}}
 \renewcommand\sectionmark[1]{\markright{\thesection\hspace{0.4cm}#1}{}}
 \renewcommand{\headrulewidth}{0pt}

 \makeatletter
 \newcommand{\rightorleftmark}{%
 \begingroup\protected@edef\x{\rightmark}%
 \ifx\x\@empty
  \endgroup\leftmark
 \else
  \endgroup\rightmark
 \fi}
 \makeatother
 %===============================================================
 \usepackage{lipsum}

 \begin{document}

 \frontmatter
  \tableofcontents

 \mainmatter
  \chapter{Introduction}
   \lipsum[1-10]

  \chapter{Preliminaries}
   \section{Basics}
    \lipsum[1-15]

 \chapter{$C4$-Modules}
  \lipsum[1-30]


  \end{document}

在添加oneside命令之前,第 1 章和第 3 章的章节名称和页码在页眉中互换,而第 2 章的章节名称出现在页眉的右上角。这正是我想要的。添加后oneside,这种行为发生了变化。我不知道为什么。我该如何解决这个问题?此外,如果我删除oneside命令,目录后会立即出现一个空白页。我该如何摆脱这个空白页?

如果有人能给我提供此代码的增强形式,我将不胜感激。

答案1

显然您不想要,oneside因为您有不同的left风格right

通常openany意味着\clearpage使用而不是\cleardoublepage以便页面可以打开到奇数页或偶数页。

然而,这适用于章节和附录,但不适用于\frontmatter\mainmatter

这是由于 1998 年做出的改变,并记录在资料中

%  \subsubsection{Front Matter, Main Matter, and Back Matter}
%
%    A book contains these three (logical) sections. The switch
%    |\@mainmatter| is true iff we are processing Main Matter.  When
%    this switch is false, the |\chapter| command does not print
%    chapter numbers.
%
%    Here we define the commands that start these sections.
%  \begin{macro}{\frontmatter}
%    This command starts Roman page numbering and turns off chapter
%    numbering.  Since this restarts the page numbering from 1, it
%    should also ensure that a recto page is used.
% \changes{v1.3r}{1996/05/26}{Make this command react to the option
%    \texttt{openany}}
% \changes{v1.3y}{1998/05/05}{Two years on: Make this command not
%    react to the option \texttt{openany} as this makes the
%    verso/recto numbering wrong: see pr/2754 for discussion}

参考报告是

https://www.latex-project.org/cgi-bin/ltxbugs2html?pr=latex%2F2754

问题是(与不同\chapter\mainmatter不仅强制使用新页面,还将页码重置为 1。您确实需要将第 1 页放在右侧页面上,否则整个页面标题左/右样式选择将基于奇数页码在右侧页面和偶数页码在左侧页面。

因此,要么接受空白页(如果您编写更多章节并且有更长的目录,则无论如何都会使用空白页),要么oneside对奇数页和偶数页使用单独的样式,而不是使用单独的样式。


空白页只是暂时的,它会随着您编辑文档而出现和消失。特别是如果您有更多前言(例如标题),那么页面会自然地落在没有空白页的右侧页面上:

在此处输入图片描述

\documentclass[12pt,a4paper,openany]{book}
\usepackage[utf8]{inputenc}
 \usepackage[left=1in,right=1in,top=1.25in,bottom=1.25in,headsep=30pt,heightrounded] 
   {geometry}
 \usepackage[x11names, svgnames, dvipsnames]{xcolor}
 \usepackage{amsmath}
 \usepackage{amsfonts}
 \usepackage{amssymb}
 \usepackage{amsthm}
 %==============================================================
 \usepackage{fancyhdr}
   \setlength{\headheight}{14.5pt}
 \pagestyle{fancy}
 \fancyhf{}
 \fancyhead[LE,RO]{\thepage}
 \fancyhead[LO]{\small\nouppercase{\rightorleftmark}}
 \fancyhead[RE]{\small\nouppercase{\leftmark}}
 \renewcommand\chaptermark[1]{\markboth{\thechapter\hspace{0.25cm} #1}{}}
 \renewcommand\sectionmark[1]{\markright{\thesection\hspace{0.4cm}#1}{}}
 \renewcommand{\headrulewidth}{0pt}

 \makeatletter
 \newcommand{\rightorleftmark}{%
 \begingroup\protected@edef\x{\rightmark}%
 \ifx\x\@empty
  \endgroup\leftmark
 \else
  \endgroup\rightmark
 \fi}
 \makeatother
 %===============================================================
 \usepackage{lipsum}

 \begin{document}

 \title{something}
 \author{somebody}
 
 \frontmatter

 \maketitle


  \tableofcontents

 \mainmatter
  \chapter{Introduction}
   \lipsum[1-10]

  \chapter{Preliminaries}
   \section{Basics}
    \lipsum[1-15]

 \chapter{$C4$-Modules}
  \lipsum[1-30]


  \end{document}

相关内容