当我在图形浮点的标题和标签之间添加新行时,交叉引用在生成的 PDF 文件中显示为“图 ??”。但是,PDF 中的超链接工作正常。删除标题和标签之间的换行符后,交叉引用可以正确显示,即“图 1.1”。该换行符是否会以某种方式将标签与标题分离?我的理解是,只要它们都在同一个浮点内,它就应该可以工作。
屏幕截图如下:
1 月 10 日编辑之前:
我正在写一篇包含多个章节的论文。主文档的文档类是 book(KOMA-script)。这些章节作为主文档的分支插入。除了一章之外,所有章节的图表交叉引用都运行正常。在这个有问题的章节中,交叉引用显示为“图表 ??”。但是,生成的 PDF 文档中的超链接可以正常工作。
我已经检查过了这,这并不是我所面临的问题。
答案1
当您提到“指向该图的超链接”时,我假设您指的是 LoF 中的超链接。是的,这全都基于\caption
,它设置正确。但是,从您的示例代码中可以清楚地看出,在 LyX 中插入换行符实际上会在标题周围创建一个单独的组:
\begin{figure}[h]
\noindent \begin{centering}
\includegraphics[<opts>]{<filename>}\caption{<caption>}
\par\end{centering}
\noindent \centering{}\label{<label>}
\end{figure}
从上面我们可以看到被\caption
放在一个centering
组里面。现在,根据了解引用和标签的工作原理您将看到\label
使用\@currentlabel
- 一个在您步进计数器时更新的宏。在这种情况下,计数器作为对 的调用的一部分进行步进\caption
。但是,当组关闭时,此更新将被恢复,因为更新仅限于其使用的组。
因此,似乎不应该在 LyX 中的\caption
和之间放置空行\label
。LyX 解释结构内新行的方式似乎很奇怪。当然,作为 LaTeX 的 GUI 式编辑器,它会尝试从用户那里删除一些类似代码的插入。然而,这种直观性带来了一些假设……在这种情况下,显然是错误解释的。