我目前正在尝试创建一个自己的模板来统一article
我在学校编写的所有文档(课程),并且我想改变方程式、图形和表格的计数器的功能。
事实上,我希望计数器能够像这样工作:
图 S.SS.XX,其中 S 表示section
数字,SS 表示subsection
编号,XX 表示在每个子部分末尾重置的计数器。
你知道怎么做吗 ?
提前致谢!
答案1
使用chngcntr
包和\counterwithin
此命令将第一个参数中的相关计数器放置在第二个参数中的计数器的重置列表中。
计数器输出将自动适应此命令。
但要小心hyperref
:必须先加载包\counterwithin
才能提供正确的链接!
\documentclass{article}
\usepackage{chngcntr}
%\usepackage{hyperref}% Must be done before \counterwithin!
\counterwithin{figure}{subsection}
\counterwithin{equation}{subsection}
\counterwithin{table}{subsection}
\begin{document}
\section{Foo}
\subsection{Foo}
\begin{equation}
E = mc^2
\end{equation}
\begin{figure}
\caption{A foo figure}
\end{figure}
\begin{figure}
\caption{Another foo figure}
\end{figure}
\section{Foobar}
\subsection{Foo}
\begin{equation}
E = mc^2
\end{equation}
\begin{figure}
\caption{A foo figure}
\end{figure}
\begin{figure}
\caption{Another foo figure}
\end{figure}
\end{document}
答案2
您可以\theequation
像这样重新定义 -command:
\renewcommand{\theequation}{\thesubsection.\arabic{equation}}
这应该会按照您的意愿创建方程式标签。与图表和表格类似:
\renewcommand{\thefigure}{\thesubsection.\arabic{figure}}
\renewcommand{\thetable}{\thesubsection.\arabic{table}}
可以使用以下命令自动重置方程、图形和表格的计数器:
\usepackage{chngcntr}
\counterwithin*{equation}{subsection}
\counterwithin*{figure}{subsection}
\counterwithin*{table}{subsection}