gpt4 book ai didi

LaTeX - 带有 multicols 的多行 parbox 上的正确垂直间距

转载 作者:行者123 更新时间:2023-12-04 06:50:13 29 4
gpt4 key购买 nike

我正在尝试使用项目列表进行两列排版。但是,该列表具有一行或两行的元素,即

AlphaBetaZeta   Alternative: Upsilon      <– (second line of the Zeta)Gamma   Alternative: LambdaEpsilonOmegaOmicron   Alternative: Upsilon...

I'd like to have this list on two columns, however I don't want the list to end with a split of a two-line item (i.e. "Alternative: xyz" should never start the second column).

My first thought is to put two-line elements into a parbox, like this:

\documentclass[12pt]{memoir}
\usepackage{multicol,ragged2e}
\begin{document}

\begin{multicols}{2}
\RaggedRight
Alpha\\
Beta\\
\parbox{\columnwidth}{ Zeta\\ \hspace{1em} \textit{Alternative:} Upsilon }
\parbox{\columnwidth}{ Gamma\\ \hspace{1em} \textit{Alternative:} Lambda }
Epsilon\\
Omega\\
\parbox{\columnwidth}{ Omicron\\ \hspace{1em} \textit{Alternative:} Upsilon }
Kappa\\
\parbox{\columnwidth}{ Zeta\\ \hspace{1em} \textit{Alternative:} Upsilon }
\parbox{\columnwidth}{ Zeta\\ \hspace{1em} \textit{Alternative:} Upsilon }
Alpha\\
Beta\\
\parbox{\columnwidth}{ Zeta\\ \hspace{1em} \textit{Alternative:} Upsilon }
\parbox{\columnwidth}{ Gamma\\ \hspace{1em} \textit{Alternative:} Lambda }
Epsilon\\
Omega\\
\parbox{\columnwidth}{ Omicron\\ \hspace{1em} \textit{Alternative:} Upsilon }
Kappa\\
\parbox{\columnwidth}{ Zeta\\ \hspace{1em} \textit{Alternative:} Upsilon }
\parbox{\columnwidth}{ Zeta\\ \hspace{1em} \textit{Alternative:} Upsilon }
Sigma\\
Delta\\
\end{multicols}
\end{document}

为了突出这个尝试解决方案的不足,我制作了这个例子的时间超过了必要的时间。如果这样排版,元素之间的间距不均匀,看起来很糟糕。

我想知道,然后:
  • 如果有任何替代方法可以使用 \parbox不会遭受这种不一致的排版。
  • 如果这 \parbox可以更改解决方案,以免行之间的间距不一致。

  • 感谢您的阅读。

    布赖恩

    最佳答案

    1) 定义你的宏,例如,\colparbox\Alt .

    2)看下面的代码。

    \def\colparbox#1{\strut \par \vskip -\baselineskip \nointerlineskip
    \parbox{\columnwidth}{\strut\ignorespaces#1\unskip\strut}\par}

    \def\Alt{\hspace{1em} \textit{Alternative:} }

    \begin{multicols}{2}
    \RaggedRight
    Alpha\\
    Beta\\
    \colparbox{ Zeta\\ \Alt Upsilon }
    \colparbox{ Gamma\\ \Alt Lambda }
    Epsilon\\
    Omega\\
    \colparbox{ Omicron\\ \Alt Upsilon }
    Kappa\\
    \colparbox{ Zeta\\ \Alt Upsilon }
    \colparbox{ Zeta\\ \Alt Upsilon }
    Alpha\\
    Beta\\
    \colparbox{ Zeta\\ \Alt Upsilon }
    \colparbox{ Gamma\\ \Alt Lambda }
    Epsilon\\
    Omega\\
    \colparbox{ Omicron\\ \Alt Upsilon }
    Kappa\\
    \colparbox{ Zeta\\ \Alt Upsilon }
    \colparbox{ Zeta\\ \Alt Upsilon }
    Sigma\\
    Delta\\
    \end{multicols}

    关于LaTeX - 带有 multicols 的多行 parbox 上的正确垂直间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3237824/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com