在 Beamer 中精确定位方程式和文本

在 Beamer 中精确定位方程式和文本

我想将方程式放在幻灯片上的精确位置,具体来说,靠近左上角,并在下一张幻灯片中将数学保留在同一位置,并在其右侧显示一些文本来解释该方程式。使用数学环境的默认选项无法让我控制定位。更一般地说,我想知道如何更好地控制数学/文本的定位,就像在 powerpoint 中一样。我提供了下面尝试过的 MWE。我正在考虑在整个演示过程中使用 tikzpicture 来进行这种数学对象的精确定位(可以选择在选定的时间使节点可见),但我很难开始。谢谢!

\documentclass{beamer}
\mode<presentation>
{
  \usetheme{default}      % or try Darmstadt, Madrid, Warsaw, ...
  \usecolortheme{default} % or try albatross, beaver, crane, ...
  \usefonttheme{default}  % or try serif, structurebold, ...
  \setbeamertemplate{navigation symbols}{}
  \setbeamertemplate{caption}[numbered]
} 

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{verbatim}


%% start
\begin{document}

\section{Some title}

\begin{frame}{Some title}
\[
(a+b)^2 = a^2 + 2ab + b^2
\] 
\pause
\alert{This is an important equation!}

\end{frame}

\end{document}

答案1

我认为最简单的解决方案是忘记绝对定位并使用beamer工具来调整位置。

在这种情况下,您可以使用类似t框架中的选项,将框架内容顶部对齐,并columns允许声明并行文本片段的环境。

下面的代码显示了一种可能的解决方案:

\documentclass{beamer}
\mode<presentation>
{
  \usetheme{default}      % or try Darmstadt, Madrid, Warsaw, ...
  \usecolortheme{default} % or try albatross, beaver, crane, ...
  \usefonttheme{default}  % or try serif, structurebold, ...
  \setbeamertemplate{navigation symbols}{}
  \setbeamertemplate{caption}[numbered]
} 

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{verbatim}


%% start
\begin{document}

\section{Some title}

\begin{frame}[t]{Some title}
\begin{columns}[onlytextwidth, t]
\column{.5\linewidth}
\centering
$(a+b)^2 = a^2 + 2ab + b^2$ 
\column{.5\linewidth}
\pause
\alert{This is another important equation but with a little more explanation!}
\end{columns}

\medskip
\begin{columns}[onlytextwidth]
\column{.5\linewidth}
\[
(a+b)^2 = a^2 + 2ab + b^2
\] 
\column{.5\linewidth}
\pause
\[
\text{\alert{This is an important equation!}}
\]
\end{columns}
\end{frame}

\end{document}

在此处输入图片描述

更新:绝对定位TiKZ

正如 OP 坚持绝对定位。以下代码显示了如何使用 来实现TikZ。我们应该对每个 tikzpicture 使用remember pictureoverlay选项,并且我们可以使用相对于current page锚点的位置。至少需要两次编译才能获得完整的输出。

\documentclass{beamer}
\mode<presentation>
{
  \usetheme{default}      % or try Darmstadt, Madrid, Warsaw, ...
  \usecolortheme{default} % or try albatross, beaver, crane, ...
  \usefonttheme{default}  % or try serif, structurebold, ...
  \setbeamertemplate{navigation symbols}{}
  \setbeamertemplate{caption}[numbered]
} 

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{verbatim}

\usepackage{tikz}
\usetikzlibrary{positioning, arrows.meta}

\tikzstyle{every picture}+=[remember picture, overlay]
%% start
\begin{document}

\section{Some title}

\begin{frame}[fragile]{Some title}

\begin{tikzpicture}
\node[below right=1cm and 1cm of current page.north west] (formula1) {$(a+b)^2 = a^2 + 2ab + b^2$};
\end{tikzpicture}

\pause
\begin{tikzpicture}
\node[right=2cm of formula1, text width=4cm, align=left] (text1) {\alert{This is another important equation but with a little more explanation!}};
\draw[-Stealth, red, thick] (formula1) -- (text1);
\end{tikzpicture}

\pause
\begin{tikzpicture}
\node[above right=1cm and 3cm of current page.south west] (formula2) {$(a+b)^2 = a^2 + 2ab + b^2$};
\node[above=2cm of formula2, text width=3cm, align=left] (text2) {\alert{Another equation!}};
\draw[-Stealth, red, thick] (formula2) -- (text2);
\end{tikzpicture}

\end{frame}

\end{document}

在此处输入图片描述

相关内容