如何在超目标名称中使用计数器值?

如何在超目标名称中使用计数器值?

我正在尝试自动标记文档中的位置(以便以后添加书签)。我定义了一个计数器nops,我的标记宏应该是这样的: \newcommand{\nop}{\addtocounter{nops}{1}\hypertarget{nop\value{nops}}{}},但这似乎不是正确的做法,因为书签总是 \bookmark[dest=nop3]{third occurrence}会带我到标题页。

我认为这是一个更普遍的问题,例如“如何在需要文本的地方使用命令”,但我对乳胶的了解不够,无法正确分类。更有知识的人可能会更改标题和标签(无论如何,似乎我无法为此创建任何有意义的标签,例如“计数器值超目标名称”或“动态书签”)。

答案1

使用\value{nops},您将获得计数器的内部表示( ),而不是其实际值,例如,您可以使用阿拉伯数字\c@nops获得。因此您的定义必须是\arabic{nops}

\newcommand{\nop}{\addtocounter{nops}{1}\hypertarget{nop\arabic{nops}}{}}

让您的书签发挥作用。

相关内容