我找到了这个回答删除章节中的编号,但我也不需要在sub
- 和subsubsection
s 上编号。
我尝试添加第二个 def,但随后又显示数字Section
。我对 Latex 还不太熟悉,不太清楚此代码块中发生了什么。
原来的:
\makeatletter
\def\@seccntformat#1{%
\expandafter\ifx\csname c@#1\endcsname\c@section\else
\csname the#1\endcsname\quad
\fi}
\makeatother
矿:
\makeatletter
\def\@seccntformat#1{%
\expandafter\ifx\csname c@#1\endcsname\c@section\else
\csname the#1\endcsname\quad
\fi}
\def\@seccntformat#1{%
\expandafter\ifx\csname c@#1\endcsname\c@subsection\else
\csname the#1\endcsname\quad
\fi}
\makeatother
答案1
由于您不需要编号,因此使用\setcounter{secnumdepth}{0}
\documentclass{article}
\setcounter{secnumdepth}{0}
\begin{document}
\section{A section}
\subsection{A sub section}
\subsubsection{A sub sub section}
\end{document}
答案2
您必须以这种方式嵌套定义:
\makeatletter
\def\@seccntformat#1{%
\expandafter\ifx\csname c@#1\endcsname\c@section\else
\expandafter\ifx\csname c@#1\endcsname\c@subsection\else
\expandafter\ifx\csname c@#1\endcsname\c@subsubsection\else
\csname the#1\endcsname\quad
\fi\fi\fi}
\makeatother
平均能量损失
\documentclass{article}
\makeatletter
\def\@seccntformat#1{%
\expandafter\ifx\csname c@#1\endcsname\c@section\else
\expandafter\ifx\csname c@#1\endcsname\c@subsection\else
\expandafter\ifx\csname c@#1\endcsname\c@subsubsection\else
\csname the#1\endcsname\quad
\fi\fi\fi}
\makeatother
\begin{document}
\section{Section}
\subsection{Subsection}
\subsubsection{Subsubsection}
\end{document}
输出
答案3
该代码仅用于从部分中删除。但是,为了删除编号,最简单的方法是将其设置secnumdepth
为 0:
\setcounter{secnumdepth}{0}
我还将展示如何改进您提供的代码以进行多项测试。
\makeatletter
\renewcommand\@seccntformat[1]{\csname prepend@#1\endcsname}
\newcommand{\prepend@section}{\thesection\quad}
\newcommand{\prepend@subsection}{\thesubsection\quad}
\newcommand{\prepend@subsubsection}{\thesubsubsection\quad}
\makeatother
如果您想删除小节标题前面的数字,但将其保留在目录中(这可能是采用这种方式而不是使用的原因secnumdepth
),只需注释掉该\prepend@subsubsection
行。
所发生的情况是,\subsubsection
将会执行\@seccntformat{subsubsection}
,进而执行\csname prepend@subsubsection\endcsname
;如果该行被注释掉,则没有\prepend@subsubsection
可用的定义,因此 TeX 会将\csname...\endcsname
构造视为等同于\relax
,因此它什么也不做。
答案4
或者简单的选项 - 使用 * 版本。您必须对每个部分/小节等执行此操作。但许多环境都有一个选项,其中 * 会抑制编号。例如 \section*{Introduction}。