2

アイテムのリストを使用して、2 列の組版を機能させようとしています。ただし、そのリストには、1 行または 2 行の要素があります。つまり、

アルファ
ベータ
ゼータ
   代替: Upsilon <– (ゼータの 2 行目)
ガンマ
   代替: ラムダ
イプシロン
オメガ
オミクロン
   代替案: ウプシロン
...

このリストを 2 列に表示したいのですが、リストを 2 行の項目の分割で終わらせたくありません (つまり、「Alternative: xyz」で 2 列目を開始しないでください)。

私の最初の考えは、次のように に 2 行の要素を入れるparboxことです。

\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}

この解決策の欠点を強調するために、この例を必要以上に長くしました。これを組版すると、要素間の間隔が不均一になり、見栄えが悪くなります。

私は疑問に思っていました:

  1. \parboxこの一貫性のない組版に悩まされないa を使用する代替手段があれば。

  2. この\parboxソリューションを変更して、行間の間隔が一貫していないようにすることができれば。

読んでくれてありがとう。

ブライアン

4

1 に答える 1

3

\colparbox1)および などのマクロを定義します\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} 
于 2010-07-13T16:03:22.580 に答える