如何在文档的某个点存储计数器值?

如何在文档的某个点存储计数器值?

我刚开始学习 LaTeX,需要一些计数器方面的帮助。

我的目标是将某个计数器在某个时间点达到的值存储在文档中,并在以后使用。这是我的尝试:

\documentclass{article}

\begin{document}

\section{title}

text
\let\myvalue\thesection

\section{title}
text

\myvalue

\end{document}

\myvalue打印的是 2 而不是 1。

我读过这个:\let 和 \def 之间有什么区别?但在我看来,在定义时 let 似乎没有存储该值。

我究竟做错了什么?

答案1

以下是一个如何做到这一点的简单示例,

\documentclass{article}

\newcounter{foo}

\begin{document}

\section{title}

text
\setcounter{foo}{\value{section}}

\section{title}
text

\thefoo

\end{document}

您只需使用命令创建一个新的计数器\newcounter,然后将其设置为所需的值\setcounter

输出

笔记如果您正在寻找一些参考工具,那么包括\label{}\ref{}在内的更好的解决方案。

\documentclass{article}

\newcounter{foo}

\begin{document}

\section{title}
\label{sec:mylabel}

text
\setcounter{foo}{\value{section}}

\section{title}

This is using the new counter: \thefoo

\noindent
This is using the label and ref commands: \ref{sec:mylabel}

\end{document}

输出 2

答案2

您也可以使用,\edef但不能\def如下所示。

\documentclass[preview,border=12pt,varwidth]{standalone}

\begin{document}
\section{Andy}
Saving \ldots
\edef\fixed{\thesection}
\def\notfixed{\thesection}

\section{Billy}
fixed: \fixed\ and notfixed: \notfixed

\section{Charlie}
fixed: \fixed\ and notfixed: \notfixed
\end{document}

在此处输入图片描述

相关内容