在同一页面上时,\detailref 或 \autoref 没有页码?

在同一页面上时,\detailref 或 \autoref 没有页码?

我正在寻找一种使用\detailref\autoref带有页码输出的方法,但只在必要时使用。当引用目标在同一页时,应抑制页码。我该怎么做?

答案1

我使用 将 Werner 的评论扩展为答案varioref。为了显示真实页码(例如,auf der vorherigen Seite您需要\renewcommand以下代码中的 (请参阅文档))。

以下是以下示例第一页和第二页的输出:

第 1 页

第2页

\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{graphicx}
\usepackage[german]{varioref}

\renewcommand\reftextfaceafter {auf Seite~\thevpagerefnum}
\renewcommand\reftextfacebefore{auf Seite~\thevpagerefnum}
\renewcommand\reftextafter {auf Seite~\thevpagerefnum}
\renewcommand\reftextbefore {auf Seite~\thevpagerefnum}

\begin{document}
    \begin{figure}
        \includegraphics{example-image}
        \caption{Test}\label{fig:test}
    \end{figure}
    \vref{fig:test}\\\vpageref{fig:test}
    \clearpage
    \vref{fig:test}\\\vpageref{fig:test}
\end{document}

相关内容