多列中的列奇數垂直對齊

多列中的列奇數垂直對齊

這段程式碼

\documentclass[12pt]{article}
\usepackage[parfill]{parskip}
\usepackage{multicol}

\widowpenalties 2 9999 9999

\begin{document}
\setlength\baselineskip{4ex plus 2ex minus 2ex}

\begin{multicols}{2}
    A\hrulefill1\newline
    A\hrulefill2\newline
    A\hrulefill3\newline
    A\hrulefill4\newline\par
    B\hrulefill1\newline
    B\hrulefill2\newline
    B\hrulefill3\newline
    B\hrulefill4\newline
    B\hrulefill5\newline\par
\end{multicols}

\end{document}

生成這個

在此輸入影像描述

基線跳過值的自動選擇看起來很奇怪,因為這兩列有幾乎垂直尺寸相同,但不完全相同。

有沒有辦法實現垂直對齊,使第一列的最後一行與第二列的最後一行處於相同的垂直位置?

答案1

\newline\par段落末尾不應該有\\或。\newline您正在強制一行沒有文字(和未滿框警告),兩列確實具有相同的垂直尺寸:

在此輸入影像描述

不要忽視警告

Underfull \hbox (badness 10000) in paragraph at lines 11--14


Underfull \hbox (badness 10000) in paragraph at lines 15--19

這是警告每個段落中的所有白線,並且還強制您使用,\widowpenalties 2因為可見的最後一行不是最後一行。

如果段落的最後一行有文本,則更容易看到發生的情況,這也消除了警告

\documentclass[12pt]{article}
\usepackage[parfill]{parskip}
\usepackage{multicol}

\widowpenalties 2 9999 9999

\begin{document}
\setlength\baselineskip{4ex plus 2ex minus 2ex}

\begin{multicols}{2}
    A\hrulefill1\newline
    A\hrulefill2\newline
    A\hrulefill3\newline
    A\hrulefill4\newline  xxx\par
    B\hrulefill1\newline
    B\hrulefill2\newline
    B\hrulefill3\newline
    B\hrulefill4\newline
    B\hrulefill5\newline xxx\par
\end{multicols}

\end{document}

相關內容