如何自动使投影仪内的所有块居中?

如何自动使投影仪内的所有块居中?

我发现了一个不错的解决方案更改我的 beamer 文档中块的宽度。

块本身是左对齐的。有没有办法让每个块自动居中,而无需将它们放入\begin{center}<block>\end{center}或类似的东西中?

这是我的 MWE 以及它目前的样子:

\documentclass{beamer}

\usetheme{Boadilla}

\addtobeamertemplate{block begin}{%
    \setlength{\textwidth}{0.5\textwidth}%
}{}

\begin{document}

    \begin{frame}
        \begin{theorem}[Pythagoras] 
            $ a^2 + b^2 = c^2$
        \end{theorem}
    \end{frame}

\end{document}

在此处输入图片描述

答案1

在此处输入图片描述

使用

\BeforeBeginEnvironment{block}{\begin{adjustbox}{minipage={\linewidth}, center, , frame}}
\AfterEndEnvironment{block}{\end{adjustbox}}

框架只是为了让您看到发生了什么。命令会将块放置在小页面中,然后使其居中。块上方的白色空间意味着块环境会自动在其上方插入一个空白空间。

完整代码

\documentclass{beamer}

\usetheme{Boadilla}

\addtobeamertemplate{block begin}{%
    \centering%
    \setlength{\textwidth}{0.5\textwidth}%
}{}

\BeforeBeginEnvironment{block}{\begin{adjustbox}{minipage={\linewidth}, center, frame}}
\AfterEndEnvironment{block}{\end{adjustbox}}

\usepackage{adjustbox}

\begin{document}

    \begin{frame}

        \begin{theorem}[Pythagoras] 
            $ a^2 + b^2 = c^2$
        \end{theorem}

    \end{frame}

\end{document}

相关内容