beamer 中的块状环境(使用 tikz 的当前页面坐标)

beamer 中的块状环境(使用 tikz 的当前页面坐标)

我正在尝试定义一个如下所示的环境(参见下面的图片和代码)

  • 环境主体包含在背景矩形内;
  • 这个矩形延伸到幻灯片的边缘;并且
  • 矩形右上角的块标题)。

示例块(阴影部分)

我想自动选择 tikzmark 名称,以便每个幻灯片可以有多个环境。

我可以定义一个一次性计数器(比如myblctr)和前缀(比如,mymark-这样环境中每次出现新的情况都会使用mymark-AA-\themyblctr

有没有更好的办法?

\documentclass{beamer}
\usepackage{tikz}
\usetikzlibrary{calc,tikzmark}}
\begin{document}

\begin{frame}{asdxb}

  Example slide\ldots

  \bigskip
  \bigskip

  % Draw box
  \begin{tikzpicture}[remember picture, overlay]
    \coordinate (left)  at ($(pic cs:AA) +(0,\baselineskip)$);
    \coordinate (right) at ($(pic cs:BB) +(0,\baselineskip)$); 
    \fill[yellow!50!gray!35!white] ($(left-|current page.west)$) rectangle ($(right-|current page.east)$);

    % Block title
    \node [anchor=base east] at (left-|current page.east) {Mathew (Mat) Sean};
  \end{tikzpicture}%
  %
  % Contents of block
  \tikzmark{AA}Text inside of the block\newline
  Should work for multiple lines
  \[ \text{with} + \text{equations} \sqrt{\text{inside}} \]%
  \tikzmark{BB}
\end{frame}  
\end{document}

答案1

听起来像是一份工作tcolorbox

\documentclass{beamer}

\usepackage[most]{tcolorbox}
\tcbset{sharp corners,oversize,attach boxed title to top right={xshift=-0.7cm},enhanced,coltitle=black,left=1cm,right=1cm, boxrule=0mm,titlerule=0mm,boxed title style={empty}}

\begin{document}

\begin{frame}

\begin{tcolorbox}[title={blub}]
test
\end{tcolorbox}

\end{frame} 

\end{document}

在此处输入图片描述

相关内容