【问题标题】:References with text in LaTeXLaTeX 中的文本参考
【发布时间】:2010-12-02 06:53:22
【问题描述】:

在 LaTeX 中,您可以通过在一个部分旁边使用 \label{} 然后使用 \ref{} 创建引用来轻松引用一个部分。但是,该引用仅包括部分的编号,或带有\pageref{} 的页面。我想插入一个包含该部分文本的参考。

例子:

\section{My Section}
\label{section:my}

This is a reference to Section~\ref{section:my}.

输出如下:

1. My Section

This is a reference to Section 1.

我想要:

This is a reference to 1. My Section.

【问题讨论】:

标签: latex


【解决方案1】:

看看这个维基:LaTeX/Labels and Cross-referencing:

hyperref 包自动包含 nameref 包和一个类似命名的命令。它插入与节名称相对应的文本,例如:

\section{MyFirstSection}
\label{marker}
\section{MySecondSection} In section \nameref{marker} we defined...

【讨论】:

    【解决方案2】:

    使用hyperref 包,您还可以通过在序言中使用\newcommand{\secref}[1]{\autoref{#1}. \nameref{#1}} 来声明一个新命令。在文本中放置\secref{section:my} 会生成:1。我的部分。

    【讨论】:

    • 不知道为什么,但是把它放在我使用的模板的序言中只是broke背页编译
    【解决方案3】:

    我认为您可以使用 hyperref 包来做到这一点,尽管我自己没有尝试过。来自相关LaTeX Wikibook section

    hyperref 包引入了另一个有用的命令; \autoref{}。此命令使用与目标类型相对应的附加文本创建一个引用,所有这些都将是一个超链接。例如,命令\autoref{sec:intro} 将创建指向\label{sec:intro} 命令的超链接,无论它在哪里。假设这个标签指向一个节,超链接将包含文本“第 3.4 节”或类似的文本(将遵循大写规则,这使得这非常方便)。您可以通过将\typeautorefname 重新定义为您想要的前缀来自定义前缀文本,如:

    \def\subsectionautorefname{section}

    【讨论】:

    猜你喜欢
    • 2023-01-19
    • 1970-01-01
    • 1970-01-01
    • 2022-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-14
    相关资源
    最近更新 更多