98

Is it possible to make a reference to the page where a figure is rendered?

I would like to write something like

see figure~\ref{figure-xyz} on page NN

where NN will automatically be maintained by LaTeX. The figure that prompted my question is almost a page so it may be floated further in the doc.

I suppose it's possible, after all the figure-to-page mapping is generated by \listoffigures.

3 Answers 3

136
see figure~\ref{figure-xyz} on page~\pageref{figure-xyz}

Also see the varioref package which lets you write see figure~\vref{figure-xyz} which will automatically add the "on page NN" iff the figure is not on the current page.

2
  • Excellent, thank you. I didn't know about the varioref package, it's very handy. Aug 23, 2010 at 2:47
  • 3
    Note: according to variosref documentation, you do not need to add unbreakable space ~ before \vref. Any ordinary space will be converted into an unbreakable space. May 16, 2015 at 12:12
31

Just use \pageref{}, so in your case:

see figure \ref{figure-xyz} on page \pageref{figure-xyz}
2
  • 21
    Please do not omit the ~. Without it, it could happen, that figure is placed at the end of the line and the number \ref{} at the beginning of the next line. ~ inserts an unbreakable space so that the number can't be divided from figure which is good typography. Same for ~\cite etc.
    – Mensch
    Sep 4, 2012 at 23:31
  • @Mensch I wish I had known that before!
    – Andrea
    May 12, 2021 at 9:37
2

A quite complete solution for page references at package cleveref (Cleveref documentation). You don't have to write "page" or "pages" when cross-referencing, neither "figure" or "figures" (!).

if you want a page reference, use \cpageref (and don’t write “page” in front), if you want a page range, use \cpagerefrange, and if you want to refer to multiple pages, simply throw themall into a single \cpageref.

In your case, I would use \cpageref{} for the page and \cref{} for the figure itself, for example,

%At preamble
\usepackage{cleveref}

%...

see \cref{figure-xyz} on \cpageref{figure-xyz}  

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.