我的最低工作示例:
\documentclass{article}
\begin{document}
\begin{itemize}
\item 1. First
\item 2. Second
\item 3a. Third
\item 3b. Third
\item 4. Fourth
\end{itemize}
\end{document}
结果:
我如何水平对齐文本(第一、第二、第三等)?
答案1
您可以定义一个新命令\myitem
\newcommand{\myitem}[1]{%
\item\makebox[1.5em][l]{#1}%
}
并用它来代替\item
这些特定itemize
的
梅威瑟:
\documentclass{article}
\newcommand{\myitem}[1]{%
\item\makebox[1.5em][l]{#1}%
}
\begin{document}
\begin{itemize}
\myitem{1.} First
\myitem{2.} Second
\myitem{3a.} Third
\myitem{3b.} Third
\myitem{4.} Fourth
\end{itemize}
\end{document}
答案2
使用enumerate
环境进行数字枚举似乎更合适。但是,有多种方法可以实现这一点:
\documentclass{article}
\usepackage{calc}% http://ctan.org/pkg/calc
\begin{document}
\begin{itemize}
\item 1.\phantom{a}\ First
\item \leavevmode\rlap{2.}\phantom{3a.} Second
\item 3a.\ Third
\item 3b.\ Third
\item \makebox[\widthof{3a.}][l]{4.} Fourth
\end{itemize}
\end{document}
\rlap
提供r
了lap
,而 LaTeX2e 方法是使用\makebox
(结合calc
的)。和\widthof
周围的对齐略有不同。 因此,根据您的详细程度,您可能还想在子枚举中使用其他一些重叠技术。3a.
3b.
使用\
是为了使句号.
不会产生句末空格。
这adjustbox
包裹可以提供类似的“搭接”支持。
答案3
我建议使用enumerate
环境的自动化方法来添加编号:
代码:
\documentclass{article}
\usepackage{enumitem}
\newcommand*{\MakeBox}[1]{\makebox[1.5em][r]{#1}}%
\begin{document}
\begin{enumerate}[label={\textbullet\protect\MakeBox{\theenumi.}}]
\item First
\item Second
\begin{enumerate}[label={\textbullet\protect\MakeBox{\arabic{enumi}\alph*.}}, align=right, before={\stepcounter{enumi}}, leftmargin=0pt]
\item Third
\item Third
\end{enumerate}
\item Fourth
\end{enumerate}
\end{document}