我在写一篇包含不等式的文章时遇到了一些问题。我想说的是:
现在,它看起来
Cauchy's Inequality
1. Introduction
2. Theorem
Bernoulli's Inequality
3. Introduction
4. Theorem
但,我想表现为
Cauchy's Inequality
1. Introduction
2. Theorem
Bernoulli's Inequality
1. Introduction
2. Theorem
我能做什么?我使用的方法:
\documentclass[a4paper,12pt,fullpage,doublespace]{report}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{mathrsfs}
\usepackage{amsmath}
\usepackage[usenames,dvipsnames]{color}
\usepackage{algorithmic}
\usepackage{algorithm}
\usepackage{hyperref}
\usepackage{variations}
\usepackage[romanian]{babel}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{graphicx}
\newtheorem{theorem}{Teorema}
\newtheorem{lemma}[theorem]{Lem\u a}
\newtheorem{corollary}[theorem]{Corolar}
\newtheorem{proposition}[theorem]{Not\u a}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Defini\c{t}ia}
\theoremstyle{remark}
\newtheorem{remark}[theorem]{Consecin\c t\u a}
\newtheorem{example}[theorem]{Exemplul}
\newtheorem*{acknowledgements}{Observa\c{t}ie}
答案1
首先,请注意,我取消了“全页”和“双倍行距”选项。它们是不必要的。(如果您想要双倍行距,只需使用setspace
包裹。
解决您实际问题的方法是在调用\chapter
或时手动重置章节计数器。(由于某种原因失败。)然后,您只需重新定义以获得正确的编号,即从中取消章节编号:\chapter*
\@addtoreset
\thesection
\documentclass[a4paper,12pt]{report}
\makeatletter
\let\ltx@chapter\chapter
\renewcommand{\chapter}{\setcounter{section}{0}\ltx@chapter}
\renewcommand{\thesection}{\@arabic\c@section}
\makeatother
\begin{document}
\chapter*{Cauchy's Inequality}
\section{Introduction}
\section{Theorem}
\chapter*{Bernoulli's Inequality}
\section{Introduction}
\section{Theorem}
\end{document}
如果您需要目录,上面的代码将无法满足您的需求,正如@egreg 指出的那样。但是,您有很多方法可以解决这个问题。您只需手动添加
\addcontentsline{toc}{chapter}{<chaptername>}
紧接着手稿中特定章节的标记。这可以通过修补\@schapter
(标准类中负责标记版本的宏\chapter
)在 LaTeX 中轻松自动完成。实际上,这有点奇怪,因为标记版本最初应该绕过目录条目,您必须修补\chapter*
以预期方式使用的宏,如其\tableofcontents
本身,以规避此行为,即如果您不想为目录设置目录条目。
因此,创建一个具有自己名称的自定义宏可能会更方便,例如\IuliChapter
(或其他任何名称:也许是反映此 sectiong 元素含义的名称,例如\subarticle
或类似)。该定义与 的重新定义相同\@schapter
。请考虑以下测试文件以查看发生了什么:
\documentclass[a4paper,12pt]{report}
\makeatletter
\let\ltx@@schapter=\@schapter
\renewcommand{\@schapter}[1]{%
\clearpage
\addcontentsline{toc}{chapter}{#1}
\setcounter{section}{0}
\ltx@@schapter{#1}}
\let\ltx@tableofcontents=\tableofcontents
\renewcommand{\tableofcontents}{\begingroup
\let\@schapter=\ltx@@schapter
\ltx@tableofcontents
\endgroup}
\newcommand{\IuliChapter}[1]{%
\clearpage
\addcontentsline{toc}{chapter}{#1}
\setcounter{section}{0}
\ltx@@schapter{#1}}
\renewcommand{\thesection}{\@arabic\c@section}
\makeatother
\begin{document}
\tableofcontents
\chapter*{Cauchy's Inequality}
\section{Introduction}
\section{Theorem}
\IuliChapter{Bernoulli's Inequality}
\section{Introduction}
\section{Theorem}
\end{document}
如果您决定坚持最后一个选项,解决方案可以简化很多:
...
\makeatletter
\newcommand{\IuliChapter}[1]{%
\clearpage
\addcontentsline{toc}{chapter}{#1}
\setcounter{section}{0}
\@schapter{#1}}
\renewcommand{\thesection}{\@arabic\c@section}
\makeatother
...