
Mi problema parece simple aunque todavía no pude encontrar ninguna solución. Estoy escribiendo mi tesis en LaTeX, pero soy totalmente nuevo en este tipo de lenguaje.
Estoy tratando de hacer referencia a una figura como:
(see Figure~\ref{fig:transistor1})
mientras que la cifra se define justo después de la referencia como:
\begin{figure}[htb]
\centering
\includegraphics[width=0.4\linewidth]{./_pic/transistor1}
\caption[The first transistor]{The first point-contact transistor developed by Bell Laboratories}
\label{fig:transistor1}
\end{figure}
Durante la compilación me sale el error "El párrafo finalizó antes de que se completara \Hy@setref@link", y por supuesto en el pdf compilado no hay ningún número después de la palabra Figura, además también falta el símbolo ).
Intenté cambiar el orden de la figura y su referencia, dejando las marcas () pero nada ayudó.
Estoy esperando su ayuda chicos, y gracias de antemano :)
Actualizar: MWE:
\documentclass[a4paper,12pt,twoside,openright]{report}
\usepackage[pdfusetitle, colorlinks, filecolor={[rgb]{0,0,1}},urlcolor={[rgb]{0,0,1}}, citecolor={[rgb]{0,0,0.4}}, linkcolor={[rgb]{0,0,0.4}}, bookmarks]{hyperref}
\begin{document}
\chapter{MEMS technology}
\ref{fig:transistor1}
\begin{figure}[htb]
\centering
\caption[The first transistor]{The first point-contact transistor developed by Bell Laboratories}
\label{fig:transistor1}
\end{figure}
\end{document}
Ahora bien, si compila esto sin el paquete hyperref, que con él, puede obtener el mismo error. Si compila nuevamente, el error desaparece en el MWE (sin embargo, en todo el documento el error permanece).
Actualización n.º 2: Ahora que he logrado encontrar el MWE adecuado, el problema ocurre cuando se usa el comando \selectlanguage:
\documentclass[a4paper,12pt,twoside,openright]{report}
\usepackage[british,german,hungarian]{babel}
\usepackage[pdfusetitle, colorlinks, filecolor={[rgb]{0,0,1}},urlcolor={[rgb]{0,0,1}}, citecolor={[rgb]{0,0,0.4}}, linkcolor={[rgb]{0,0,0.4}}, bookmarks]{hyperref}
\begin{document}
\selectlanguage{british}
\chapter{MEMS technology}
\ref{fig:transistor1}
\begin{figure}[htb]
\centering
\caption[The first transistor]{The first point-contact transistor developed by Bell Laboratories}
\label{fig:transistor1}
\end{figure}
\end{document}
Gracias de antemano Adán
Respuesta1
Paquete hyperref
con paquete nameref
cambia el formato de datos internos de los \label
datos, porque necesitan datos adicionales. Por lo tanto, se pueden generar errores si los datos del .aux
archivo se escriben mediante combinaciones de paquetes diferentes, especialmente con o sin hyperref
/ nameref
.
Soluciones alternativas:
En este caso, se puede ignorar el error,
.aux
se escribe un nuevo archivo y la siguiente ejecución de LaTeX debería estar bien.O elimine los archivos auxiliares, si se agregan o eliminan
hyperref
/ (o algunos otros paquetes).nameref
Respuesta2
Encontré la respuesta: si usa "húngaro" como último idioma en las opciones del paquete babel, se produce el error. Si utiliza otras permutaciones, el código se compilará sin ningún problema...