我想用前导\S
(章节)符号来格式化章节和子章节,但不希望子章节出现在目录中,所以我写了
\documentclass{article}
\usepackage{titlesec}
\setcounter{secnumdepth}{1}
\titleformat{\section}[hang]{\normalfont\Large\bfseries}{\S\ \thesection}{1em}{}
\titleformat{\subsection}[hang]{\normalfont\large\bfseries}{\S\ \thesubsection}{1em}{}
\begin{document}
\section{Section One}
\subsection{Subsection A}
\end{document}
这对于部分来说工作正常,但子部分没有前导符号。输出是
如果我删除\setcounter{secnumdepth}{1}
,一切都会按预期工作(当然,TOC 条目除外)。我假设有某种方法可以告诉 titlesec 我想要什么,但我搞不清楚。
答案1
您需要设置计数器tocdepth
,而不是secnumdepth
。
\documentclass{article}
\usepackage{titlesec}
\setcounter{tocdepth}{1}
\titleformat{\section}[hang]{\normalfont\Large\bfseries}{\S\ \thesection}{1em}{}
\titleformat{\subsection}[hang]{\normalfont\large\bfseries}{\S\ \thesubsection}{1em}{}
\begin{document}
\tableofcontents
\section{Section One}
\subsection{Subsection A}
\end{document}