在文本后面但在投影仪背景之上

在文本后面但在投影仪背景之上

我想使用Henri Menke 对另一个问题的回答使用 beamer。不幸的是,tikzpicture 不可见。正如指出的那样这里这是因为 tikzpicture 位于 beamer 的背景后面。因此,当使背景透明时,它将变得可见\setbeamercolor{background canvas}{bg=}。但这张幻灯片应该也具有与所有其他幻灯片相同的 beamer 背景。

我怎样才能将 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图片添加到 beamers 自己的背景机制中,而不必使用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}

在此处输入图片描述

相关内容