使用 minipage 和 \usepackage[parfill]{parskip} 覆盖 \hbox

使用 minipage 和 \usepackage[parfill]{parskip} 覆盖 \hbox

以下 MWE 产生警告Overfull \hbox (30.0pt too wide) in paragraph at lines 6--12

\documentclass{article}

\usepackage[parfill]{parskip}

\begin{document}
  \begin{minipage}{0.5\columnwidth}
    b
  \end{minipage}%
  \begin{minipage}{0.5\columnwidth}
    a
  \end{minipage}
\end{document}

删除\usepackage[parfill]{parskip}并放置\noindent在第一个小页面之前解决了此 MWE 的问题,但这没有帮助,因为 parskip 包似乎更适合双列文档,而不是允许常规缩进。 (当twocolumn将作为 的选项添加时article,所述问题也不会改变。)删除并将%宽度更改为类似于以防止由于额外空间而导致的自动换行(使用不间断空格仍然意味着减小小页面宽度以避免另一个过满警告)似乎也可以解决问题,但考虑到/ 的0.43\columnwidth行为,我觉得应该有不同的解决方案。parskip\noindent

答案1

parfill选项将 \parfillskip 设置为 30pt。这意味着 TeX 会尝试在段落末尾留出 30pt 的空格。这不适用于您的 minipages。您可以本地重置 \parfillskip:

\documentclass{article}

\usepackage[parfill]{parskip}

\begin{document}
\begingroup \setlength{\parfillskip}{0pt}%
  \begin{minipage}{0.5\columnwidth}
    b
  \end{minipage}%
  \begin{minipage}{0.5\columnwidth}
    a
  \end{minipage}%
\par\endgroup
\end{document}

相关内容