Lyx 中的超链接交叉引用

Lyx 中的超链接交叉引用

我想在文本中交叉引用图表。我希望它们像期刊一样在文本中显示超链接。我已标记所有图表并将其作为交叉引用插入文本中。但在 PDF 输出中,只有图表或表格编号“1”显示超链接,例如。我想要的是表格或图表与编号一起出现并带有超链接,例如“图 1”。有人能告诉我如何在 Lyx 中做到这一点吗?非常感谢。

答案1

首先确保您使用了 refstyle,转到 Document->Document Settings->Document Class 并选中“使用 refstyle...”。现在让我们添加可点击的引用:转到 Document->Settings->PDF Properties 并选中“使用 Hyperref 支持”。

现在,添加交叉引用时,在窗口底部的格式选项中选择“格式化引用”。

选择“格式化引用”将为每个交叉引用添加“图”或“表”,而超链接设置将向任何“\ref”添加超链接。问题?超链接仅在“1”上,而不是完全在“图 1”上。为了解决这个问题,我们需要将以下内容添加到您的序言中

\newref{fig}{refcmd={\hyperref[#1]{Figure \ref{#1}}}}
\newref{tab}{refcmd={\hyperref[#1]{Table \ref{#1}}}}
\newref{eq}{refcmd={\hyperref[#1]{Eq. (\ref{#1})}}}

当然,你可以将“Figure”改为“Fig”或“Drawing”或任何你喜欢的

答案2

为 LyX 添加一个完全“内部”的解决方案。(是的,我确实花了太多时间在 LyX 上,而没有合适的 TeX 编辑器)

  1. 在“文档”>“设置”>“文档类别”中确保已Use refstyle (not prettyref) for cross-references勾选

  2. 在文档 > 设置 > PDF 属性中勾选该框Use Hyperref Support(基本上告诉 LyX 使用 hyperref 包)。

  3. 插入一个图形浮点并将其命名为Foo。(我的意思是Foo在标签框中输入)

  4. 通过“插入”>“标签”(或使用菜单栏上的图标)插入标签。如果是名为 foo 的图形,则将标签命名为 fig:Foo

  5. 通过“插入”>“交叉引用”(或使用菜单栏上的图标)插入交叉引用。将弹出一个对话框(如下面的屏幕截图所示)

LyX 交叉引用对话框

  1. 在格式下,我选择了Formatted Reference。这给了我

“第 1 页上的图 1”

  1. 如果你希望这种情况发生在桌子上,那么你必须使用 Table Float 并使用tab:Goo

结果:

本示例的 LaTeX 源代码(可通过“视图”>“源平面”查看)如下所示:

\begin{figure}[h]
\protect\caption{Foo}
\label{fig:Foo}
\end{figure}

According to \prettyref{fig:Foo}

\begin{table}[h]
\protect\caption{Goo}
\label{tab:Goo}
\end{table}

According to \nameref{tab:Goo}

输出为: LyX 参考输出

当然,如果你需要更多功能,那么 Elad 的解决方案很棒!但如果你更喜欢使用 LyX 的用户界面,那么请听从我的建议 :)

相关内容