我希望制作一个模板
IIIIIIIIIIIIIIIIIIIIIIII
第 1 行 I 第 a
行 第 2 行 I 第 b 行
IIIIIIIIIIIIIIIIIIIIIIII
另一文本
其中 I 只是列定位。
我找到了 multicol 包,但是我还没有成功使用它。
\begin{multicols}{2}
\hline line 1 line a\\
\hline line 2 line b\\
\end{multicols}
Another text
我如何将 a 线和 b 线置于右侧中心位置?
答案1
下面是一个最小的例子,它复制了更大一部分文本的输出(我定义\text
为包含一些乱数-样式虚拟文本)。
\documentclass{article}
\usepackage{array}% http://ctan.org/pkg/array
\newcolumntype{L}{@{}>{\raggedright\arraybackslash}p{\dimexpr.5\linewidth-\tabcolsep}}
\newcolumntype{R}{>{\raggedleft\arraybackslash}p{\dimexpr.5\linewidth-\tabcolsep}@{}}
\newcommand{\text}{%
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit,
vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida
mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, magna.
Donec vehicula augue eu neque.%
}
\begin{document}
\text
\noindent\begin{tabular}{LR}
\hline
\text & \text \text \\
\hline
\text \text & \text \\
\hline
\end{tabular}
\text
\end{document}
使用以下方式创建两种列类型array
的\newcolumntype
:
L
:\raggedleft
p
宽度恰好为 的 aragraph 列.5\linewidth-\tabcolsep
。这允许文本分布在文本块的 50% 范围内,同时仍能处理tabular
s 固有的列分隔;并且R
:\raggedright
p
模仿的字串列L
。
使用可移除和tabular
外边缘的列分隔。还可使用其他对齐选项,以及和 其余文档内容之间的垂直间距。L
R
@{}
tabular
请注意,由于内容放置在 内tabular
,因此它不会跨越页面边界。
答案2
如果您所需要的只是将短行刷新到侧面并希望逐行输入它们,则您不需要任何环境,因为这就\hfill
足够了。
\documentclass[12pt, a4paper]{article}
\begin{document}
\parbox{5cm}{ \parindent=.5cm % just for show
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
\noindent
line 1 \hfill line a\\
line 2 \hfill line b\\
line 3 \hfill line c
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
}
\end{document}
为了使显示保持较小,我把所有东西都放在一个狭窄的 parbox 中。以下是输出: