我有以下情况:
我有一个文档的固定结构,其中包含编号的章节和子章节。
有些章节可以为空。我想在生成的 PDF 以及目录中隐藏空白章节。
同时,带有内容的章节的编号应该像空白章节一样工作!
举个小例子,以下编号不仅是允许的,而且是预期的:
1 简介
1.1 讨论的主题
1.3 其他说明
缺少 1.2,因为我对此没什么可说的。为了帮助我处理文档,最好将\section{name}
1.2 的 id 保留在文档中,不过:
\section{Intro}
\subsection{Topics presented}
\subsection{Nothing to say}
\subsection{Other notes}
我怎样才能最好地存档它?
答案1
一个可能的解决方案是使用一个名为的命令,\hiddensubsection
如果条件\ifshowsubsection
计算结果为“假”,则隐藏其内容并增加相关计数器。
为了\showsubsectiontrue
显示子部分,可以\subsection
使用
\showsubsectiontrue
\hiddensubsection{Foo}{Foobar}
\showsubsectionfalse
完整代码:
\documentclass{article}
\usepackage{blindtext}
\usepackage{hyperref}
\newif\ifshowsubsection% Initially false
% Say \showsubsectiontrue in order to show the subsection
\newcommand{\hiddensubsection}[2]{%
\ifshowsubsection
\subsection{#1}
#2%
\else
\refstepcounter{subsection}% allow for \label
\fi
}
\begin{document}
\tableofcontents
\section{First section}
\subsection{Foo subsection}
\subsection{Foobar subsection}
\hiddensubsection{You won't see this}{\blindtext}
\subsection{Yet another foobar subsection}
\end{document}