En el ejemplo simple siguiente, una referencia dentro del varwidth
entorno falla debido a que hyperref
el paquete se cargó con la opción ocgcolorlinks
. Agregar ocgx2
(con la misma opción) empeora esto aún más.
\documentclass{article}
\usepackage{varwidth}
\usepackage[ocgcolorlinks]{hyperref}
%\usepackage[ocgcolorlinks]{ocgx2}
\begin{document}
\section{A section} \label{sec}
A reference outside \texttt{varwidth}: sec.~\ref{sec}.
\noindent
\begin{varwidth}{\textwidth}
A reference \hphantom{outside }\llap{inside} \texttt{varwidth}: sec.~\ref{sec}.
\end{varwidth}
\end{document}
¿Alguien puede proporcionar una solución que permita el uso de ref
/ href
/ cref
/... dentro varwidth
del entorno sin deshabilitar ocgcolorlinks
la opción hyperref
o ocgx2
?
Respuesta1
Podrías intentar restaurar localmente \pdfliteral a la definición original (varwidth la redefine):
\documentclass{article}
\usepackage{varwidth}
\usepackage{hyperref}
\usepackage[ocgcolorlinks]{ocgx2}
\begin{document}
\section{A section} \label{sec}
A reference outside \texttt{varwidth}: sec.~\ref{sec}.
\makeatletter
\noindent
\begin{varwidth}{\textwidth}
A reference \hphantom{outside }\llap{inside}\texttt{varwidth}: sec.~\mbox{\let\pdfliteral\@@vwid@pdfliteral\ref{sec}}.
\end{varwidth}
\makeatother
\end{document}