将使用 mdframed 创建的框添加到目录中

将使用 mdframed 创建的框添加到目录中

我正在使用mdframed创建带有标题和所有内容的盒子。

我希望在目录之后立即列出这些内容,就像图表或表格的列表一样。

我在这里看到了一个解决方案: 目录中的方框列表

但它对我来说太复杂了(我不太熟练),因为它似乎使用了一个新的环境。

我想在书本环境中这样做,但article将来可能也需要它。

在我陷入定义新环境的头痛之前,有任何简单的解决方案吗?

谢谢!!!

弗朗西斯科

答案1

我建议使用startcode选项mdframed并应用一个定义为保存选项内容的\addcontentsline选项。\mdf@frametitleframetitle

\documentclass{article}

\usepackage{mdframed}

\usepackage{blindtext}
\makeatletter


\newmdenv[startcode={\addcontentsline{mdbox}{section}{\mdf@frametitle}}]{myenv}





\newcommand{\listofboxes}{%
  \section*{List of Boxes}
  \@starttoc{mdbox}%
}
\makeatother


\begin{document}
\listofboxes

\clearpage

\begin{myenv}[frametitle={Foo}]
Stuff

\blindtext[5]
\end{myenv}

\begin{myenv}[frametitle={Foobar}]
Other Stuff

\blindtext[2]
\end{myenv}


\end{document}

在此处输入图片描述

相关内容