我刚刚学习 LaTeX,我不知道是否有更好的方法,但我尝试使用描述列表做一个漂亮的简历布局,并遇到了一个问题,即当在项目内开始换行时,会出现不必要的缩进。
我不知道如何在不移动项目第一行的情况下将新行与边距对齐。
这是我的代码:
\documentclass{article}
\usepackage{enumitem}
\usepackage{setspace}
\doublespacing
\begin{document}
\begin{description}[align=right] %Title
\item[\underline{{\Large Title}}]
\end{description}
\begin{description}[align=right] %Info
\item[Item 1] Some words
\item[Item 2] Other words
\item[Item 3] Different words
\newline More words belonging to item 3
\end{description}
\end{document}
提前谢谢了!
PS:您推荐什么学习 LaTeX 的特定方法吗?例如一些书籍指南或网站?
答案1
这里还有另一种可能性:另一种环境,rdescription
使用,eqparbox
以便标签宽度是文档中最长的标签的长度:
\documentclass{article}
\usepackage{enumitem}
\usepackage[showframe]{geometry}
\usepackage{setspace}
\usepackage{eqparbox, etoolbox}
\newlist{rdescription}{description}{1}
\AtBeginEnvironment{rdescription}{%
\renewcommand*\descriptionlabel[2][Des]{\hspace\labelsep\eqmakebox[Des][r]{\hfill\normalfont\bfseries #2}}\setlist[rdescription]{leftmargin =\dimexpr\eqboxwidth{Des}+\labelsep}}%
\doublespacing
\begin{document}
\begin{rdescription}%
\item[Item 12000] Some words
\item[Item 2] Other words
\item[Item 250] Different words
\newline More words belonging to item 3
\end{rdescription}
\begin{rdescription}%
\item[Item 1] Some words
\item[Item 2] Other words
\item[Item 250] Different words
\newline More words belonging to item 3
\end{rdescription}
\end{document}
答案2
如果我理解你的问题正确的话,你想将 -environments 中第一个行之后的行缩进设置description
为 0cm。你可以看看 -package enumitem
。使用它你可以调整和微调描述列表。但我推荐 -environment enumerate
:
\documentclass[]{scrartcl}
\usepackage{enumitem}
\begin{document}
Using \texttt{description}:
\begin{description}[leftmargin=0cm]
\item[Item 1] Some words.
\item[Item 2] Other words
\item[Item 3] Different words\\More words belonging to item 3
\end{description}
Using \texttt{enumerate}:
\begin{enumerate}[leftmargin=*,label=\textbf{\sffamily Item \arabic*}]
\item Some words.
\item Other words
\item Different words\\More words belonging to item 3
\end{enumerate}
\end{document}
编辑:为了使描述中的标签右对齐,可以使用:
\documentclass[]{scrartcl}
\usepackage{enumitem}
\begin{document}
Using \texttt{description}:
\begin{description}[align=right,leftmargin=*,labelindent=5cm]
\item[Item 1] Some words.
\item[Item 2] Other words
\item[Item 3] Different words\\More words belonging to item 3
\item[Item 10000] a new item
\item[Item 100000000000] a new item
\end{description}
\end{document}
根据您的喜好更改labelindent=
。结果如下:
请注意,尺寸太小labelindent
会导致标签进入页边距,甚至超出页面。
EDIT2:也许有一个更好的方法,使标签的列宽可定义(尽可能使用换行符)。您可以labelwidth=
根据自己的喜好进行更改。
\documentclass[]{scrartcl}
\usepackage{enumitem}
\SetLabelAlign{parright}{\strut\smash{\parbox[t]{\labelwidth}{\raggedleft#1}}}
\begin{document}
Using \texttt{description}:
\begin{description}[align=right,leftmargin=*,labelindent=5cm]
\item[Item 1] Some words.
\item[Item 2] Other words
\item[Item 3] Different words\\More words belonging to item 3
\item[Item 10000] a new item
\item[Item 100000000000] a new item
\end{description}
New approach using \texttt{parright}:
\begin{description}[align=parright,leftmargin=!,labelwidth=2.5cm]
\item[Item 1] Some words.
\item[Item 2] Other words
\item[Item 3] Different words\\More words belonging to item 3
\item[Item 10000] a new item
\item[Item 100000000000] a new item\\a new row
\end{description}
\end{document}