我想在幻燈片上的一些程式碼周圍繪製橢圓,作為疊加層,每這個答案。然而,它似乎不起作用。事實上,XeLaTeX 甚至沒有渲染第二張幻燈片。
我的程式碼是這樣的:
\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}
我正在使用 Latexmk,FWIW。我測試了上述答案中連結的程式碼,並獲得了正確的輸出,所以我猜它正在執行正確的傳遞次數。但是,當我刪除 minted 環境時,它仍然不起作用:
\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}
答案1
好的,我發現問題了。如果我刪除fragile=singleslide
框架選項,那麼它在第二個範例中起作用。然而,minted 環境至少需要這個fragile
選項。幸運的是,這種組合是有效的:
\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}