如何删除同一行上多个投影仪颜色框之间的间距?

如何删除同一行上多个投影仪颜色框之间的间距?

我正在制作自己的 Beamer 主题,用于演示。footline我想在底部(在)一行中放置三个颜色不同的颜色框。

在我的 theme.sty 文件中,我通过以下方式完成了此操作:

\setbeamertemplate{footline}{
    \leavevmode
    \begin{beamercolorbox}[wd=0.33\paperwidth,ht=7pt,dp=4pt]{footerbox}
        \centering
        \insertauthor
    \end{beamercolorbox}
    \begin{beamercolorbox}[wd=0.34\paperwidth,ht=7pt,dp=4pt]{footerboxcenter}
        \centering
        \inserttitle
    \end{beamercolorbox}
    \begin{beamercolorbox}[wd=0.33\paperwidth,ht=7pt,dp=4pt]{footerbox}
        \centering
        \insertframenumber/\inserttotalframenumber
    \end{beamercolorbox}
}

我最终得到的是

显示颜色框之间间距的图像

这基本上就是我想要的,只是框之间没有空间。每个框的确切内容和比例可能会发生变化 - 这里的重点只是一行上的多个彩色框。我尝试过各种格式、列、小页面、水平空间等,但都没能消除这个空间。

我猜想这里可能遗漏了某些命令或参数,或者可能有更“LaTeX 式”的方法来实现我想要的效果。我是否做错了什么?或者是否有更合适的方法将多个颜色框放在一行上?

答案1

您需要%在 之后\end{beamercolorbox},否则未受保护的行结尾就像插入空格一样。请参阅行末百分号(%)有什么用?有关行尾为空格的更多信息。

此外,如果您将the 作为选项传递,则可以避免\centering在每个中使用。beamercolorboxcenterbeamercolorbox

\documentclass{beamer}

\setbeamercolor{footerbox}{bg=blue, fg=white}
\setbeamercolor{footerboxcenter}{bg=red}

\setbeamertemplate{footline}{%
    \leavevmode
    \begin{beamercolorbox}[wd=0.33\paperwidth,ht=7pt,dp=4pt,center]{footerbox}
        \insertauthor
    \end{beamercolorbox}% <- added
    \begin{beamercolorbox}[wd=0.34\paperwidth,ht=7pt,dp=4pt,center]{footerboxcenter}
        \inserttitle
    \end{beamercolorbox}% <- added
    \begin{beamercolorbox}[wd=0.33\paperwidth,ht=7pt,dp=4pt,center]{footerbox}
        \insertframenumber/\inserttotalframenumber
    \end{beamercolorbox}
}

\begin{document}

\begin{frame}
    abc
\end{frame} 

\end{document}

在此处输入图片描述

相关内容