我想用亨利·門克在另一個問題中的回答與投影機。不幸的是,tikz圖片不可見。正如所指出的這裡這是因為 tikzpicture 位於 beamer 背景後面。所以當背景透明時它就會變得可見\setbeamercolor{background canvas}{bg=}
。但這張幻燈片也應該像所有其他幻燈片一樣具有相同的投影機背景。
如何將 tikzpicture 放置在鑄造文字後面但位於投影機背景之上?
\documentclass{beamer}
\usepackage{minted}
\newminted{latex}{linenos, frame=lines, autogobble, breaklines}
\usepackage{tikz}
\newcommand{\tikzmark}[1]{\tikz[overlay,remember picture,baseline=(#1.base)] \node (#1) {\vphantom{I}};}
\usepackage{eso-pic}
\newcommand{\colorPreamble}{blue!10}
\newcommand{\colorDocument}{green!10}
\begin{document}
\begin{frame}[fragile]
\twocolumn
\begin{latexcode*}{escapeinside=||}
|\tikzmark{n}|\documentclass{article}
[...]
|\tikzmark{c}|
\begin{document}
[...]
|\tikzmark{s}|\end{document}
\end{latexcode*}
\AddToShipoutPictureBG*{%
\begin{tikzpicture}[remember picture, overlay]
\path[overlay, fill=\colorPreamble] (n.north) rectangle ([xshift=\linewidth] c.south);
\path[overlay, fill=\colorDocument] (c.south) rectangle ([xshift=\linewidth] s.south);
\end{tikzpicture}
}
\twocolumn
\end{frame}
\end{document}
答案1
我無法測試minted
,但我認為您可以簡單地將tikz
圖片添加到投影機自己的背景機制中,而不是使用eso-pic
.
\documentclass{beamer}
\usepackage{tikz}
\newcommand{\tikzmark}[1]{\tikz[overlay,remember picture,baseline=(#1.base)] \node (#1) {\vphantom{I}};}
\newcommand{\colorPreamble}{blue!10}
\newcommand{\colorDocument}{green!10}
\begin{document}
{
\addtobeamertemplate{background canvas}{}{%
\begin{tikzpicture}[remember picture, overlay]
\path[overlay, fill=\colorPreamble] (n.north) rectangle ([xshift=\linewidth] c.south);
\path[overlay, fill=\colorDocument] (c.south) rectangle ([xshift=\linewidth] s.south);
\end{tikzpicture}
}
\begin{frame}[fragile]
\tikzmark{n}
[...]
\tikzmark{c}
[...]
\tikzmark{s}
\end{frame}
}
\begin{frame}
content...
\end{frame}
\end{document}