我想在文本中交叉引用图表。我希望它们像期刊一样在文本中显示超链接。我已标记所有图表并将其作为交叉引用插入文本中。但在 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 编辑器)
在“文档”>“设置”>“文档类别”中确保已
Use refstyle (not prettyref) for cross-references
勾选在文档 > 设置 > PDF 属性中勾选该框
Use Hyperref Support
(基本上告诉 LyX 使用 hyperref 包)。插入一个图形浮点并将其命名为
Foo
。(我的意思是Foo
在标签框中输入)通过“插入”>“标签”(或使用菜单栏上的图标)插入标签。如果是名为 foo 的图形,则将标签命名为 fig:Foo
通过“插入”>“交叉引用”(或使用菜单栏上的图标)插入交叉引用。将弹出一个对话框(如下面的屏幕截图所示)
- 在格式下,我选择了
Formatted Reference
。这给了我
“第 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}
当然,如果你需要更多功能,那么 Elad 的解决方案很棒!但如果你更喜欢使用 LyX 的用户界面,那么请听从我的建议 :)