multicol 中 paracol 的水平盒子溢出

multicol 中 paracol 的水平盒子溢出

我用帕拉科尔环境来创建两列布局。然后,我想让这个布局分布在两列上。因为 paracol 不嵌套,所以我使用多色缠绕在伞绳上(\newentry),参见下方的 MWE。

大部分情况下,它都能按预期工作。但是,有一个溢出的 hbox 警告,而且,我们确实可以注意到 multicols 环境内部和外部的条目之间的错位。

不知何故保留了适当的空间(注意对齐\dotfill),但第一个 paracol 列中的文本“认为”它没有足够的空间。删除波浪号后~\hfill,甚至插入了换行符。

我认为这与 paracol 计算间距的方式有关,但局部修改的测试\textwidth并没有任何效果。

有没有更有知识的人知道这里发生了什么?

\documentclass{article}

\usepackage{paracol}
\usepackage{multicol}

\def\subqmarginwidth{8em} % entry margin
\setlength{\columnsep}{0.5em} % for paracol as well as multicol package..

\newcommand{\newentry}[2][]{%
\setcolumnwidth{\subqmarginwidth,\fill}
\begin{paracol}{2}
#1p~\hfill a)%
\switchcolumn%
#2%
\end{paracol}%
}

\begin{document}

\newentry[2]{some text}
\newentry[2]{\dotfill}

\begin{multicols}{2}
\newentry[2]{\dotfill}
\columnbreak
\newentry[2]{\dotfill}
\end{multicols}

\end{document}

输出: MWE 输出

相关内容