
Sou iniciante em TEX e agora estou aprendendo a criar uma referência. Estou lendo o livro "The Not So Short Introduction to LATEX2" de Oetiker, Partl, Hyna, Schlegl; na página 42 seção 2.8 Referência cruzada, o código é escrito como
A reference to this section \label{sec:this} looks like:
"see section~\ref{sec:this} on page~\pageref{sec:this}"
E estou usando CTex e WinEdt e minhas perguntas são:
- Fiz um arquivo pdf a partir do código acima, mas os números das seções e das páginas não estão destacados e não consigo clicar neles. Por que é tão?
- Tentei fazer referência a outras páginas digitando o número da página como
{sec:37}
, mas não funcionou. Como posso consertar isso? - O que o código
sec
realmente significa? É arbitrário ou uma sintaxe predefinida? - Quando digitei
\label{}
, uma caixa de menu chamada Labels (51) apareceu e há menus suspensos comoc:ISYAC
,c:UNBOUND
,c:UNIFBURN
,... etc... o que é isso? Temos que escolher uma dessas listas ou podemos escrever o nosso próprio like{sec:this}
?
Ajudas são muito apreciadas! Muitíssimo obrigado!
Responder1
O mecanismo geral é definir uma âncora em algum lugar do documento com \label{<name>}
, onde <name>
pode ser uma combinação de números, letras :
e -
(por segurança). Essas âncoras devem ser definidas explicitamente pelo autor, por isso \ref{sec:47}
não funcionam a menos que sejam definidas por você. Depois de configurar uma âncora, você pode consultá-la com \ref{<name>}
(fornecendo o contador correspondente, como capítulo ou seção ou equação ou… número) ou \pageref{<name>}
(fornecendo o número da página correspondente).
Alguns autores usam identificadores como sec:
, eq:
, thm:
etc. para tornar os nomes das âncoras mais legíveis por humanos, mas isso não é necessário para que o mecanismo funcione.
pacotes
O mecanismo do LaTeX pode ser estendido por alguns pacotes:
hyperref
faz referências a hiperlinks clicáveis (e tem mais alguns recursos).cleveref
encontra os nomes corretos para etiquetas e imprime\ref{anchor5}
comosection~5
em vez de5
, por exemplo.varioref
compara os números das páginas da âncora e da referência e adiciona texto comoon previous page
,on page 6
etc.nameref
pode imprimir o título real de uma âncora.
MWE
\documentclass[english]{article}
% langage
\usepackage{babel}
% only for \lipsum blind text
\usepackage{lipsum}
% ref packages
\usepackage{nameref}
% folowing must be in this order
\usepackage{varioref}
\usepackage{hyperref}
\usepackage{cleveref}
\begin{document}
\section{First section}
\lipsum[1-10]
\section{My section}\label{sec:mysection}
\lipsum[1-22]
\section{References}
\begin{itemize}
\item \verb+\ref{sec:mysection}+: \ref{sec:mysection}
\item \verb+\pageref{sec:mysection}+: \pageref{sec:mysection}
\item \verb+\cref{sec:mysection}+: \cref{sec:mysection}
\item \verb+\cpageref{sec:mysection}+: \cpageref{sec:mysection}
\item \verb+\vref{sec:mysection}+: \vref{sec:mysection}% already combined with \cref
\item \verb+\vpageref{sec:mysection}+: \vpageref{sec:mysection}
\item \verb+\nameref{sec:mysection}+: \nameref{sec:mysection}
\end{itemize}
\end{document}