Desenhar gráficos de sobreposição sobre código criado

Desenhar gráficos de sobreposição sobre código criado

Quero desenhar elipses em torno de algum código que tenho em um slide, como sobreposições, por exemplo.esta resposta. No entanto, não parece funcionar. Na verdade, o XeLaTeX nem sequer está renderizando o segundo slide.

Meu código é algo como:

\begin{frame}[fragile=singleslide]{Frame title}
  \begin{minted}[autogobble,fontfamily=myfont,escapeinside=||}{c}
    int main(int argc, char** argv) {
      return |\tikzmark{start}|0|\tikzmark{end}|;
    }
  \end{minted}

  \begin{tikzpicture}[remember picture,overlay]
    \node<2>[draw,line width=2,cyan,circle,fit={(pic cs:start) (pic cs:end)}] {};
  \end{tikzpicture}
\end{frame}

Estou usando latexmk, FWIW. Testei o código vinculado na resposta mencionada e obtive a saída correta, então acho que está fazendo o número correto de passagens. No entanto, quando removo o ambiente cunhado, ainda não funciona:

\begin{frame}[fragile=singleslide]{Frame title}
  Hello \tikzmark{start}World\tikzmark{end}

  \begin{tikzpicture}[remember picture,overlay]
    \node<2>[draw,line width=2,cyan,circle,fit={(pic cs:start) (pic cs:end)}] {};
  \end{tikzpicture}
\end{frame}

Responder1

OK, encontrei o problema. Se eu remover a fragile=singleslideopção frame, ela funcionará no segundo exemplo. Porém, o ambiente cunhado precisa de pelo menos a fragileopção. Esta combinação, felizmente, funciona:

\begin{frame}[fragile]{Frame title}
  \begin{minted}[autogobble,fontfamily=myfont,escapeinside=||}{c}
    int main(int argc, char** argv) {
      return |\tikzmark{start}|0|\tikzmark{end}|;
    }
  \end{minted}

  \begin{tikzpicture}[remember picture,overlay]
    \node<2>[draw,line width=2,cyan,circle,fit={(pic cs:start) (pic cs:end)}] {};
  \end{tikzpicture}
\end{frame}

informação relacionada