如何使用每个未编号部分自动重置 tcolorbox 编号?

如何使用每个未编号部分自动重置 tcolorbox 编号?

我正在使用 tcolorbox 进行练习,我想在每个部分自动重新开始编号,包括未编号的部分。

我正在使用 documentclass[book]并且有几个章节。

目前,计数器会自动重置编号的\section,但不会自动重置未编号的\section*

我甚至尝试\setcounter{tcbcounter}{0}在每个部分之后手动将计数器设置为 0,但即使这样也不起作用,除非将代码插入框内而不是框之间。

我已经意识到\stepcounter{section}在开始每个单独部分之前添加未编号部分之后的部分可以完成这项工作(如 MWE 中所示),但这远非高效和自动化。

这是一个 MWE,其中框 3 和 4 应分别编号为 1 和 2:

\documentclass[A4]{book}
\usepackage[most]{tcolorbox}

\newtcolorbox[auto counter,number within=section,number freestyle={\noexpand\arabic{\tcbcounter}}]{mybox}[2][]{%
    title=Mybox~\thetcbcounter: #2, #1}
    
\usepackage{titlesec}
\titleformat{\chapter}[display]   
{\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge}   
\titlespacing*{\chapter}{0pt}{-50pt}{40pt}

\begin{document}
\chapter{First chapter}
\section{First section}

\begin{mybox}{A box with title}
This is a numbered box.
\end{mybox}

\begin{mybox}{}
This is a numbered box without title.
\end{mybox}

\section*{Unnumbered section}

\begin{mybox}{Another box with title}
This is a numbered box. 
\end{mybox}

\begin{mybox}{}
This is a numbered box without title.
\end{mybox}

\section*{Second unnumbered section}
\stepcounter{section}
\begin{mybox}{A third box with title}
This is a numbered box.
\end{mybox}

\begin{mybox}{}
This is a numbered box without title.
\end{mybox}

\end{document}

相关内容