当我使用以下 MWE 获取两列中的分项文本时,列表中的项目有时会采用“对齐”格式,因此两个单词之间会有很大的空间。这会产生一个外观不佳的两列列表。我怎样才能使它们左对齐,从而改善外观?
\documentclass{article}
\usepackage{etoolbox}
\AtBeginEnvironment{itemize}{\begin{multicols}{2}} %%% this line
\AtEndEnvironment{itemize}{\end{multicols}} %%% and this one
\usepackage{multicol}
\begin{document}
\begin{itemize}
\item my first item
\item my second item
\item my third item in itemized environment
\item my forth
\item 5
\item 6
\item 7
\item 8
\item 9
\item 10
\item 11
\item 12
\item 13
\end{itemize}
\end{document}
答案1
您可以使用\raggedright
:
\AtBeginEnvironment{itemize}{\begin{multicols}{2}\raggedright}
\raggedright
在多列中是本地的。
完整代码:
\documentclass{article}
\usepackage{etoolbox}
\AtBeginEnvironment{itemize}{\begin{multicols}{2}\raggedright} %%% this line
\AtEndEnvironment{itemize}{\end{multicols}} %%% and this one
\usepackage{multicol}
\begin{document}
\begin{itemize}
\item my first item
\item my second item
\item my third item in itemized environment
\item my forth
\item 5
\item 6
\item 7
\item 8
\item 9
\item 10
\item 11
\item 12
\item 13
\end{itemize}
\end{document}
更进一步,您可以将其放入\usepackage{ragged2e}
序言中并使用\RaggedRight
来获得:
\documentclass{article}
\usepackage{ragged2e}
\usepackage{etoolbox}
\AtBeginEnvironment{itemize}{\begin{multicols}{2}\RaggedRight} %%% this line
\AtEndEnvironment{itemize}{\end{multicols}} %%% and this one
\usepackage{multicol}
\begin{document}
\begin{itemize}
\item my first item
\item my second item
\item my third item in itemized environment
\item my forth
\item 5
\item 6
\item 7
\item 8
\item 9
\item 10
\item 11
\item 12
\item 13
\end{itemize}
\end{document}
主要优点\RaggedRight
是它允许连字,同时保持不规则的正确性。
选择权在你手中。
答案2
不要重新定义itemize
:你会失去它,而且最好不要这样做。
只需使用\raggedright
:
\documentclass{article}
\usepackage{multicol}
\newenvironment{twoitemize}
{\begin{multicols}{2}\raggedright\begin{itemize}}
{\end{itemize}\end{multicols}}
\begin{document}
\begin{twoitemize}
\item my first item
\item my second item
\item my third item in itemized environment
\item my forth
\item 5
\item 6
\item 7
\item 8
\item 9
\item 10
\item 11
\item 12
\item 13
\end{twoitemize}
\end{document}
或者\RaggedRight
按照ragged2e
另一个答案的建议。但是,为了你自己的利益,不重新定义itemize
。