可点击的目录,无需使用 Section/Subsection/等标签

可点击的目录,无需使用 Section/Subsection/等标签

有没有办法创建可点击的目录而不使用任何“Section”标签?
此代码应该多次(创建目录的元素):

\begin{center}
   \phantom{.}
   \vfill
   \textsc{\textbf{\huge Foo}}
   \vfill
\end{center}

我知道使用 \section 可能会更容易,但我希望元素看起来像这样。

答案1

您可以使用常见问题解答中提到的其中一个软件包https://www.texfaq.org/FAQ-secthead。但通常可以使用内置的 轻松重新定义分段\@startsection

\usepackage{hyperref}
\setcounter{secnumdepth}{0}
\makeatletter
\renewcommand\section{\@startsection
  {section}{1}{0pt}{-12pt plus -1fill}{12pt plus 1fill}%
  {\huge\scshape\bfseries\centering}}
\makeatother

我忘了文档解释了什么\@startsection——clsguide 没有它,但你可以在 ltsect.dtx 中找到它。

根据评论进行编辑:第一个\vfill不应在分页符处丢弃,常规\section命令应保留用于其他类型的部分,如目录标题。因此使用随机名称而不是“部分”

\usepackage{hyperref}
\setcounter{secnumdepth}{0}
\makeatletter
\newcommand\blob{\@startsection
  {section}{1}{0pt}{-1pt}{12pt plus 1fill}%
  {\huge\scshape\bfseries\centering \mbox{}\\*[\fill]}}
\makeatother

我保留了名称“section”,因此 ToC 条目的格式与常规条目相同\section

[我仍然对巨大的灵活性感到不安,\vfill并想知道该\part命令是否更接近所需的外观。]

如果无法\section使用或某些其他命令,请确保您的代码包含后跟。在原始问题中,应该是\@startsection\phantomsection\addcontentsline{toc}{section}{<the title>}

\begin{center}
  \phantom{.}
  \vfill
  \phantomsection\addcontentsline{toc}{section}{Foo}%
  \textsc{\textbf{\huge Foo}}
  \vfill
\end{center}

您必须使用提供粗体小型大写字母的字体系列。

相关内容