itemize 和 itemize 在列中的缩进相同

itemize 和 itemize 在列中的缩进相同

如何才能使普通 itemize 和列中 itemize 的缩进相同?如下面的示例代码所示,列中 itemize 的缩进较少。

\documentclass{beamer}

\begin{document}

\frame {
  \begin{itemize}
    \item foo
    \item bar
    \item baz
  \end{itemize}
}

\frame {
  \begin{columns}
    \column{.5\textwidth}
      \begin{itemize}
        \item foo
        \item bar
        \item baz
      \end{itemize}
    \column{.5\textwidth}
      A picture
  \end{columns}
}

\end{document}

代码预览

有简单的解决办法吗?

答案1

问题确实在于0.5\textwidth + \beamer@rightmargin + \beamer@leftmargin + 0.5\textwidth > \textwidth……

您可以将这些边距设置为 0,正如 Peter 所指出的(但这会导致列粘在一起,而这并不总是您想要的),或者您可以使用较小的列。

请参阅以下问题以了解非常相似的问题:投影列中的边距

在您的情况下,以下“神奇数字” .455 应该大致有效(至少对于这个 MWE...)

\documentclass{beamer}

\begin{document}

\frame{
  \begin{itemize}
    \item foo     
    \item \rule{\linewidth}{1mm}
    \item baz
  \end{itemize}
    \rule{\linewidth}{1mm}
  \begin{columns}
    \column{.455\textwidth}
      \begin{itemize}
        \item foo
        \item \rule{\linewidth}{1mm}
        \item baz
      \end{itemize}
      \rule{\linewidth}{1mm}
    \column{.455\textwidth}
      \begin{itemize}
        \item foo
        \item \rule{\linewidth}{1mm}
        \item baz
      \end{itemize}
        \rule{\linewidth}{1mm}
  \end{columns}
}

\end{document}

答案2

不确定是否有官方的方法可以做到这一点,但在序言中添加以下内容可以为我修复对齐问题:

\makeatletter
\setlength{\beamer@rightmargin}{0em}
\setlength{\beamer@leftmargin}{0em}
\makeatother

为了限制这种影响,最好只在需要的地方使用它。下面我定义了一个命令\AdjustMargins,它需要在开始时执行,\frame以便那些更改只针对该帧。

\documentclass{beamer}

\makeatletter
\newcommand*{\AdjustMargins}{%
    \setlength{\beamer@rightmargin}{0em}%
    \setlength{\beamer@leftmargin}{0em}%
}
\makeatother

\begin{document}
\frame {
  \begin{itemize}
    \item foo
    \item bar
    \item baz
  \end{itemize}
}

\frame {\AdjustMargins% Ensure changes are local
  \begin{columns}[r]
    \column{.5\textwidth}
      \begin{itemize}
        \item foo
        \item bar
        \item baz
      \end{itemize}
    \column{.5\textwidth}
      A picture
  \end{columns}
}
\end{document}

相关内容