用于引用带有页码的图形的宏

用于引用带有页码的图形的宏

我有

Figure \ref{sp}

这使

Figure 3

我想得到

Figure 3, p. 13

有没有可以参考图片和页码的宏?

答案1

您还可以使用cleveref包装以避免每次都写“figure”或者“p.”。

所以写

\Cref{sp}, \cpageref{sp}

如果您定义以下格式,则可以得到您想要的结果

\crefname{page}{p.}{pp.}
\crefname{figure}{figure}{figures}

平均能量损失

\documentclass{article}

\usepackage{cleveref}

\crefname{page}{p.}{pp.}
\crefname{figure}{figure}{figures}

\begin{document}
Some text
\newpage

\begin{figure}
\caption{text}\label{sp}
\end{figure}

\Cref{sp}, \cpageref{sp}

\end{document} 

输出:

在此处输入图片描述


编辑

您甚至可以创建自己的命令来自动执行此操作:

\newcommand{\Crefplus}[1]{\Cref{#1}, \cpageref{#1}}
\newcommand{\crefplus}[1]{\cref{#1}, \cpageref{#1}}

并按照以下 MWE 使用它们:

\documentclass{article}

\usepackage{cleveref}

\crefname{page}{p.}{pp.}
\crefname{figure}{figure}{figures}

\newcommand{\Crefplus}[1]{\Cref{#1}, \cpageref{#1}}
\newcommand{\crefplus}[1]{\cref{#1}, \cpageref{#1}}

\begin{document}
Some text
\newpage

\begin{figure}
\caption{text}\label{sp}
\end{figure}

\Crefplus{sp} at the beginning of line.

Inside a line \crefplus{sp}.

\end{document} 

输出:

在此处输入图片描述

相关内容