删除投影仪项目末尾方程式后面的多余空格

删除投影仪项目末尾方程式后面的多余空格

我正在尝试在 beamer 框架中编写一个逐项列表,并在项目之间留有额外的空间。因此,以公式结尾的项目与下一个项目之间的空间特别大,因为 \vfill 的额外空间与边界框的下部空白相结合。这可以在以下 MWE 中看到:

\documentclass{beamer}
\usetheme{Berkeley}
\usepackage{amsmath,amssymb,amsfonts}

\begin{document}

\frame{
    \frametitle{Test frame}

    \begin{itemize}
        \item This is a test file for the alignment of equations
        \vfill
        \item at the end of items: Here is an equation array
        \begin{equation*}
            A = B + C
        \end{equation*}
        \vfill
        \item Here no equation follows
        \vfill
        \item Now we have an align environment
        \begin{align*}
             A & = B + C \\
             D & = E - F
        \end{align*}
        \vfill
        \item And this is the last line   
    \end{itemize}
}
\end{document}

在此处输入图片描述

虽然我理解这些超大垂直间距背后的逻辑,但至少在我看来,这在审美上不是最佳的。由于 TeX 通常经过深思熟虑,我认为有一些标准化的方法来解决这个问题。我的问题是

  1. 有没有标准方法可以解决方程式结束项目后多余空格的问题? 是否有标准设置表明哪种大小的空格在视觉上最令人愉悦(例如,在完成一个项目时, \belowdisplayskip 的长度应减少多少比例)?

  2. 如果没有标准方法,那么建议采用什么方法进行全局定制而不破坏 Beamer 的任何其他工作?

虽然许多问题都讨论了这两个主题,即更改项目分隔处的空间和方程式的边界框,但我找不到任何结合解决它们的问题。如果调整方程式周围的间距,如如何整体改变方程周围的间距?,这也会影响项目中间的方程(应保持原样)。如果按照建议调整项目之间的间距用于 beamer 的 itemize 环境中项目之间间距的全局设置,那么其他项目的间隔也会扩大,不仅仅是那些以等式结尾的项目。

编辑:从评论中补充:我总共有大约 300 张幻灯片,这是课程所有幻灯片的总和,我会尝试对它们进行润色,然后将它们作为单个文件提供给学生(他们已经有了每个班级内容的文件,但我更喜欢提供一个在单个文件中呈现整个课程的版本)。在我看来,如果没有额外的间距,一些幻灯片看起来会不太好。我试图在我的 MWE 中关注空间累积的直接问题,而不是提供间距不佳的幻灯片的最坏例子。

答案1

我遇到了和你一样的问题,发现这一页基本上,只需添加

\makeatletter
\g@addto@macro\normalsize{%
    \setlength\belowdisplayskip{-0pt}
}

并且运行良好!

您的完整示例如下

\documentclass{beamer}
\usetheme{Berkeley}
\usepackage{amsmath,amssymb,amsfonts}

\makeatletter
\g@addto@macro\normalsize{%
    \setlength\belowdisplayskip{-0pt}
}

\begin{document}

\frame{
    \frametitle{Test frame}

    \begin{itemize}
        \item This is a test file for the alignment of equations
        \vfill
        \item at the end of items: Here is an equation array
        \begin{equation*}
            A = B + C
        \end{equation*}
        \vfill
        \item Here no equation follows
        \vfill
        \item Now we have an align environment
        \begin{align*}
             A & = B + C \\
             D & = E - F
        \end{align*}
        \vfill
        \item And this is the last line   
    \end{itemize}
}
\end{document}

答案2

您可以使用该enumitem包并更改itemsep

\documentclass{beamer}
\usetheme{Berkeley}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{enumitem}
\setitemize{itemsep=2ex,label=\usebeamerfont*{itemize item}%
  \usebeamercolor[fg]{itemize item}
  \usebeamertemplate{itemize item}}

\begin{document}

\frame{
    \frametitle{Test frame}

    \begin{itemize}
        \item This is a test file for the alignment of equations
        \item at the end of items: Here is an equation array
        \begin{equation*}
            A = B + C
        \end{equation*}
        \item Here no equation follows
        \item Now we have an align environment
        \begin{align*}
             A & = B + C \\
             D & = E - F
        \end{align*}
        \item And this is the last line   
    \end{itemize}
}
\end{document}

相关内容