如何抑制 \chapter 中的“章节”(同时保留编号)

如何抑制 \chapter 中的“章节”(同时保留编号)

使用\chapter我得到:

第一章 这部小说的意义
第二章 这部
小说的情节 第三章 这部小说的寓意

我想要得到的是:

1. 这部小说的意义
2. 这部小说的情节
3. 这部小说的寓意

答案1

标准bookreport文档类别中的章节标题通过以下方式构建\@makechapterhead

\def\@makechapterhead#1{%
  \vspace*{50\p@}%                                 % Insert 50pt (vertical) space
  {\parindent \z@ \raggedright \normalfont         % No paragraph indent, ragged right
    \ifnum \c@secnumdepth >\m@ne                   % If you should number chapters
      \if@mainmatter                               % ... and you're in \mainmatter
        \huge\bfseries \@chapapp\space \thechapter % huge, bold, Chapter + number
        \par\nobreak                               % paragraph break without page break
        \vskip 20\p@                               % Insert 20pt (vertical) space
      \fi
    \fi
    \interlinepenalty\@M                           % Penalty
    \Huge \bfseries #1\par\nobreak                 % Huge, bold chapter title
    \vskip 40\p@                                   % Insert 40pt (vertical) space
  }}

为了删除章节标题中的部分标题(但保持目录不变),\@makechapterhead请根据您的喜好重新定义上述内容。例如,以下重新定义删除了对“章节”的引用,并将标题放在编号旁边。我已将其包含在一个最小工作示例的形式中:

在此处输入图片描述

\documentclass{book}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\makeatletter
\def\@makechapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright \normalfont
    \ifnum \c@secnumdepth >\m@ne
      \if@mainmatter
        %\huge\bfseries \@chapapp\space \thechapter
        \Huge\bfseries \thechapter.\space%
        %\par\nobreak
        %\vskip 20\p@
      \fi
    \fi
    \interlinepenalty\@M
    \Huge \bfseries #1\par\nobreak
    \vskip 40\p@
  }}
\makeatother
\begin{document}
\tableofcontents
\chapter{The meaning of this novel}\lipsum[1-100]
\chapter{The plot of this novel}\lipsum[1-100]
\chapter{The moral of this novel}\lipsum[1-100]
\end{document}

lipsum提供了一些虚拟文本,乱数风格。

答案2

摆脱这个词的绝对最简单的方法Chapter是使用相应的书籍或报告课程KOMA 脚本包。类别scrbookscrreprt标题类型均以您喜欢的类型为标准。KOMA-script类别文件使用无衬线字体作为标题的标准,如果您喜欢在标题中使用罗马字体,则可以通过添加以下命令一次性更改所有标题:

\addtokomafont{disposition}{\rmfamily}

在你的序言中。

一个最小的工作示例:

\documentclass{scrbook}
\usepackage{blindtext}
\addtokomafont{disposition}{\rmfamily}

\begin{document}
\tableofcontents
\blinddocument

\appendix
\blinddocument

\end{document}

也就是说,你只需替换

\documentclass{book}

\documentclass{scrbook}

并添加到你的序言中

\addtokomafont{disposition}{\rmfamily}

编辑于 2017 年 2 月 10 日

如果您更喜欢使用标准类并且只想删除名称chapterIE. 将章节号放在单独的行上,您可以重新定义 -macro \chaptername

\documentclass{report}
\usepackage{lipsum}

\renewcommand{\chaptername}{} %% remove the word \chapter

\begin{document}
\tableofcontents
\chapter{The meaning of this novel}\lipsum[1-100]
\chapter{The plot of this novel}\lipsum[1-100]
\chapter{The moral of this novel}\lipsum[1-100]
\end{document}

答案3

假设您正在使用bookreport文档类(或加载其中一个类的文档类),您可以通过加载以下代码来实现您的目标 - 这主要是对宏代码的快速改编\@makeschapterhead(对于未编号或“带星号的”章节标题)放在book.cls文档的序言中:

\makeatletter
\def\@makechapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright \normalfont
    \interlinepenalty\@M
    \Huge\bfseries  \thechapter.\quad #1\par\nobreak
    \vskip 40\p@
  }}
\makeatother

请注意,章节标题上方和下方的默认垂直空白量分别为 50pt 和 40pt。您可以随意更改这些设置以满足您的需求。

相关内容