非常糟糕的水平盒未满

非常糟糕的水平盒未满

我想在演示文稿中添加一个进度条,并且在草稿模式下,在进度条下方显示页码。我有代码可以做到这一点,看起来很棒,但我每帧都会收到一次这样的警告:

Underfull \hbox (badness 10000) has occurred while \output is active

我希望可以以某种方式避免此警告。以下是进度条/页码组合的最小化版本,演示了此警告:

\documentclass{beamer}
\usepackage{tikz}
\setbeamertemplate{footline}{
    \tikz\node[draw,minimum width=\textwidth-0.25ex]{};
    foo
}
\begin{document}
\begin{frame}
\end{frame}
\end{document}

我看过很多类似的问题(12345),但它们似乎都涉及手动插入换行符或对齐表格文本。我的两者都不涉及,所以他们的解决方案似乎在这里没有帮助。

我该怎么做才能在我的示例中保持 tikz 节点和其下方的文本的位置,而不会生成那么多警告?

答案1

你需要某物要填满行,在段落的最后一行\parfillskip(在之后,foo但是在带有 tikz 的行上,如果您没有使其达到全宽,则需要将其填充。

所以

\setbeamertemplate{footline}{%
    \tikz{\node[draw,minimum width=\textwidth-0.25ex]{};}\hfill\break%
    foo
}

或者按照评论中的建议,你可以把它们分成几段,这样两者都可以\parfillskip

相关内容