标题中的标签

标题中的标签

对于某些样式,似乎\label必须包含该语句\caption才能保持良好的引用。这是为什么?

答案1

实际上,\label必须出现在 之后(不一定在 里面)\caption,因为该命令会增加与 的参数关联的\caption计数器。\label

答案2

\caption(重新)定义一个宏\@currentlabel,然后\label使用。

我最近看到有人发了一篇帖子,内容类似

{\itshape \caption{foo bar}}\label{foobar}

(任何有经验的人都会对此感到困惑,但这种事确实发生了。)

然后由于\@currentlabel是在一个组内定义的,\label最终引用了最后\caption一个不是在一个组内,因为该值还没有从组内部导出。

放入\label标题内解决了以下问题以一种“强有力”的方式,

对于通常被误导的人来说,只要说“将 \label 放在 (或其他) 之后\caption;中间不要有空格或换行符”就足够了

分组效果同样适用于部分和其他可以标记的事物。

答案3

mbq 声称某些模板会弄乱标签系统。如果是这样,您就不要使用标签。

fwiw,我已经下载并扫描了 mbq 提到的 jss 内容,没有发现任何迹象表明标签处理不是标准处理。

相关内容