添加块和项目时在 Beamer 中移动的图形

添加块和项目时在 Beamer 中移动的图形

我尝试添加块并在带有图形的框架上逐项列出。我希望在添加功能时图形不会移动。

我在 beamer 中拥有上述代码。我尝试限制页面的大小,但添加 itemize 时图形仍在移动。它还会根据 itemize 的大小移动(当有 3 个项目时向上移动,当只有 2 个项目时向下移动)。我尝试使用该\overprint函数,但没有成功。我还尝试为图形创建一个迷你页面,但没有成功。谢谢。

\documentclass[10pt]{beamer}

\usefonttheme{structurebold}

\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{graphicx}
\usepackage{textpos}
\usepackage[prefix=tikzsym]{tikzsymbols}
\usepackage{tikz, pgfplots}
\usepackage{pgf}
\usepackage{multicol}
\usepackage{amsfonts,amsmath,amssymb}
\usepackage{subfloat}
\usepackage[T1]{fontenc}

\begin{document}

\begin{frame}{\textcolor{black}{frame title}}  
     \begin{tikzpicture}
     \centering
       \node[anchor=south west,inner sep=0] (image)  at (0,0) { \includegraphics[trim = 0cm 0cm 0cm 0cm,clip,width=0.5\textwidth]{lake.jpg}};
    \end{tikzpicture}
   \begin{minipage}{0.95\textwidth}
    \begin{center}
     \begin{columns}
      \begin{column}{0.45\textwidth}
       \onslide<2->{\begin{block}{
         \only<2>{Title1}
         \only<3-4>{Title2}}
         \begin{itemize}
           \only<2>{\item Text1
             \item text2}
         \only<3>{\item text3
             \item text4
             \item text5}
        \end{itemize}
       \end{block}}
      \end{column}
    \begin{column}{0.45\textwidth}
   \only<4>{\begin{block}{
        \only<4>{title3}}
        \begin{itemize}
        \only<4>{\item text6
             \item text7}
             \vspace{0.2cm}
        \end{itemize}
     \end{block}}
    \end{column}
   \end{columns}
  \end{center}
 \end{minipage}
\end{frame}

\end{document}

在此处输入图片描述

答案1

迄今为止,避免在覆盖之间跳转的最简单方法是使用顶部对齐的框架。

关于您的代码的其他一些评论:

  • \usepackage[utf8]{inputenc}没有必要,这是几年来的默认设置
  • beamer 自动加载 graphicx 和所有 ams* 包。无需您加载它们
  • beamer 有自己的柱式机构,不需要\usepackage{multicol}
  • 如果已经加载了 tikz 包,则无需加载 pgf 包。这将自动加载 pgf
  • 您无需手动将框架标题颜色更改为黑色,而是可以更改相应的投影仪颜色
  • tikzpicture 插入图片似乎没有必要,只需插入图片本身
  • tikzpicture\centering中的不执行任何操作
  • 如果你不剪辑你的图像,你不需要所有的trim = 0cm 0cm 0cm 0cm,clip
  • 您不必将列包装成 a minipage,而只需使用totalwidth=0.95\textwidth选项
  • 柱子周围的环境center不会做任何事情
  • \only<>{...}您可以利用块和项目具有覆盖感知的功能,而不必将所有标题、项目等都包装进去。
  • 如果您将左侧itemize环境保留在第 4 个覆盖层上,则不得使用 删除所有项目\only<3>{...}。您不能拥有没有项目的 itemize 环境。这将导致错误
\documentclass[10pt]{beamer}

\usefonttheme{structurebold}

\usepackage[french]{babel}
\usepackage{textpos}
\usepackage[prefix=tikzsym]{tikzsymbols}
\usepackage{pgfplots}
\usepackage[T1]{fontenc}

\setbeamercolor{frametitle}{fg=black}

\begin{document}

\begin{frame}[t]
  \frametitle{frame title}  
  \includegraphics[width=0.5\textwidth]{example-image-duck}
  \begin{columns}[totalwidth=0.95\textwidth,T]
    \begin{column}{0.45\textwidth}
      \begin{block}<only@2>{Title1}
        \begin{itemize}
          \item Text1
          \item text2
        \end{itemize}
      \end{block}
      \begin{block}<only@3->{Title2}
        \begin{itemize}
          \item text3
          \item text4
          \item text5
        \end{itemize}        
      \end{block}
    \end{column}
    \begin{column}{0.45\textwidth}
      \begin{block}<4>{title3}
        \begin{itemize}
          \item text6
          \item text7
        \end{itemize}
      \end{block}
    \end{column}
  \end{columns}
\end{frame}

\end{document}

在此处输入图片描述

相关内容