No exemplo simples abaixo, uma referência dentro varwidth
do ambiente falha devido ao hyperref
pacote carregado com a opção ocgcolorlinks
. Ading ocgx2
(com a mesma opção) torna isso ainda pior.
\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}
Alguém pode fornecer uma correção que permita o uso de ref
/ href
/ cref
/… dentro varwidth
do ambiente sem desabilitar ocgcolorlinks
a opção hyperref
ou ocgx2
?
Responder1
Você poderia tentar restaurar localmente \pdfliteral para a definição original (varwidth a 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}