Latex:文本应自动填充Beamer幻灯片中的框架

时间:2010-07-12 12:31:12

标签: latex beamer

在投影仪帧中,我希望内容在帧中均匀分布。

使用选项\ documentclass [slidestop] {beamer}我可以很容易地指定内容为顶部/中心对齐但是当我在幻灯片上只有几个子弹时它们在顶部聚集在一起,我希望投影仪决定间距他们之间自动均匀地传播它们。

如果不通过反复试验来设置vspace,这是否可行?

2 个答案:

答案 0 :(得分:7)

我认为使用\ vfill会减少试错部分。每个子弹之间的一个\ vfill应保证均匀间距。在项目符号之前和/或之后尝试\ vfill,以便与之前的文本或页面底部分离。我不使用或了解Beamer,但我怀疑有一种方法可以将\ vfill命令放入Beamer模板中。

\documentclass{article}
\begin{document}
\begin{itemize}
\vfill\item This is text of first item
\vfill\item This is text of second item
\vfill\item This is text of third item
\end{itemize}
\end{document}

根据您的评论,这里有一种方法可以将vfill定义为在主列表项中自动使用但在子项目中没有vfill。这种方式允许您使用相同的\ item命令,无论您是在主列表还是在嵌套列表中,但需要您定义或重新定义环境,并了解何时添加主(即,已填充)列表当你添加一个非vfilled(即嵌套)列表时:

\documentclass{article}

\newenvironment{novfillenum}{\begin{enumerate}\let\item\olditem}%
{\end{enumerate}}
\newenvironment{vfilleditems}{\begin{itemize} \let\olditem\item \renewcommand\item{\vfill\olditem}}%
{\end{itemize}}

\begin{document}
\begin{vfilleditems}
\item Item One 
   \begin{novfillenum}
        \item subitem1
        \item s2
        \item s3
    \end{novfillenum}
\item Item Two 
   \begin{novfillenum}
        \item subitem1
        \item s2
        \item s3
    \end{novfillenum}
\item item three
   \begin{novfillenum}
        \item subitem1
        \item s2
        \item s3
    \end{novfillenum}
\end{vfilleditems}

\end{document}

答案 1 :(得分:1)

在这里添加另一个样本,因为第一个答案太拥挤了。经过测试改变标签命令,你知道什么,它似乎有效。但它给出了错误,我确信这与将\ vfill作为标签构造的一部分有关。我很惊讶它似乎确实创建了所需的输出,但该方法需要一些调整才能使其正常工作:

\begin{document}

\let\oldlabelitemi\labelitemi
\renewcommand{\labelitemi}{\vfill\oldlabelitemi{\hspace{1ex}}}

\begin{itemize}

\item Item One 
    \begin{itemize}
    \item subone
    \item subtwo
    \item subthree
    \end{itemize}
\item Item Two 
   \begin{itemize}
        \item subitem1
        \item s2
        \item s3
    \end{itemize}
\item item three
   \begin{itemize}
        \item subitem1
        \item s2
        \item s3
    \end{itemize}
\end{itemize}

\end{document}