是否可以获取引用项目的名称和标签?

是否可以获取引用项目的名称和标签?

如果我定义了一个带有标题和标签的图形、表格、代码列表或任何类似的东西,我怎样才能获取项目名称和参考标签?

例如,如果我定义一个图形:

\begin{figure}
    \includegraphics{figures/figure.png}
    \caption{Some figure.}
    \label{figure:some-figure}
\end{figure}

我需要做什么来避免写入:Figure \ref{figure:some-figure} shows并写入\ref{figure:some-figure} shows以产生以下输出:

“图1显示”?

答案1

cleveref您可以使用提供命令的软件包\cref{},该命令会根据您引用的浮动的性质自动添加“图形”或“表格”。您还可以使用大写版本\Cref{}

\documentclass{article}
\usepackage{cleveref}

\begin{document}

\begin{figure}
\caption{This is a figure.}\label{fig}
\end{figure}

\begin{table}
\caption{This is a table.}\label{tab}
\end{table}

See \cref{fig} or \cref{tab}. \Cref{fig} shows that\dots. \Cref{tab}, on the contrary,\dots

\end{document}

编辑:如果您使用具有自定义名称的列表,则应明确将其指定为cleveref

\crefname{lstlisting}{code listing}{code listings}
\Crefname{lstlisting}{Code Listing}{Code Listings}

也可以看看:cleveref + 列表。顺便说一句,我认为你需要cleveref先加载listings

相关内容