带 Beamer 的框架中心块

带 Beamer 的框架中心块

我想更改演示文稿中的块宽度,因此在网站上快速搜索后,我找到了瓦布洛克解决方案 :更改投影仪中块的默认宽度

它包括添加:

\newenvironment<>{varblock}[2][.9\textwidth]{%
  \setlength{\textwidth}{#1}
  \begin{actionenv}#3%
    \def\insertblocktitle{#2}%
    \par%
    \usebeamertemplate{block begin}}
  {\par%
    \usebeamertemplate{block end}%
  \end{actionenv}}

回到序言。现在,在我的.tex文档中,我有如下块:

\begin{varblock}[8cm]{Title}
Some content...
\end{varblock}

但我无法将块水平居中在框架上。我尝试将这三条线放在和之间\begin{center}...\end{center}\begin{centering}...\end{centering}但块仍然留在框架的左侧。感谢您的帮助。

答案1

如果将缩短的块放在里面minipage,您可以轻松地将其置于中心

\documentclass{beamer}
\usetheme{Warsaw}

\newenvironment<>{varblock}[2][.9\textwidth]{%
    \setlength{\textwidth}{#1}
    \begin{actionenv}#3%
        \def\insertblocktitle{#2}%
        \par%
        \usebeamertemplate{block begin}}
    {\par%
        \usebeamertemplate{block end}%
    \end{actionenv}}

\begin{document}
    \begin{frame}
        \begin{center}
            \begin{minipage}{4cm}
                \begin{varblock}[4cm]{New block}
                    Variable width, here 4cm
                \end{varblock}
            \end{minipage}
        \end{center}
    \end{frame}
\end{document}

在此处输入图片描述

答案2

如果您minipage按照 samcarter 的指示使用,则可以使用block并省略varblock定义,因为minipage已经允许减小的宽度block

\documentclass{beamer}
\usetheme{Warsaw}

\begin{document}
    \begin{frame}
        \begin{center}
            \begin{minipage}{4cm}
                \begin{block}{New block}
                    Variable width, here 4cm
                \end{block}
            \end{minipage}
        \end{center}
    \end{frame}
\end{document}

答案3

这可能与我的主题有关,但 minipage 环境会弄乱块头和块主体之间的空间。将其放在列中为我解决了这个问题:

\documentclass{beamer}
\usetheme{Warsaw}

\begin{document}
  \begin{frame}
    \begin{columns}[T]
      \column{0.25\textwidth}
      \column{0.5\textwidth}
      \begin{block}{New block}
         Variable width, here 50%
      \end{block}
    \column{0.25\textwidth}
    \end{columns}
  \end{frame}
\end{document}

相关内容