笔记:

笔记:

实现列表的最佳方式是什么,其中项目无缝对齐,左对齐、居中对齐或右对齐。我对左对齐的项目更感兴趣(例如一系列或(系统)方程式)。我有一个方程式““并希望创建一个左对齐列表,描述变量代表什么或等于什么,如下例所示。

enter image description here

答案1

我将使用逐项列表来执行此操作:

enter image description here

如果您希望术语左对齐,则可以使用以下[align=left, leftmargin=<length>, labelwidth=\widthof{<widest_term>}]选项:

enter image description here

笔记:

  • 我使用了geometry包装并进行了调整,paperwidth=以便更容易看到线条的包裹。

代码:

\documentclass{article}
\usepackage[paperwidth=8.0cm,showframe]{geometry}
\usepackage{amsmath}
\usepackage{calc}
\usepackage{enumitem}

\begin{document}
\noindent
The final equation is:
\[ x= (m*n)+P+Q \]
where\par
\begin{itemize}
  \item [$x$] is some really long explanation of this value 
  \item [$n$] is the value of 
  \item [$m$] is the value of
  \item [$P$] is the value of
  \item [$Q$] is the value of
\end{itemize}

\noindent
The final equation is:
\[ x= (m*n)+P+Q \]
where\par
\begin{itemize}[align=left,leftmargin=1.5cm,labelwidth=\widthof{$P+Q$}]
  \item [$x$] is some really long explanation of this value 
  \item [$m*n$] is the their product
  \item [$P+Q$] is the their sum
\end{itemize}
\end{document}

答案2

可能有点过了,但我在论文中这样做过,那是很久以前,当时我还是一个真正的 LaTeX 新手,我甚至不知道memoir

\documentclass[a5paper]{article}

\newenvironment{descr}[1]{\list{}{%
  \setlength{\topsep}{0pt}
  \setlength{\itemsep}{0pt}
  \setlength{\parsep}{0pt}
  \setlength{\itemindent}{0pt}
  \settowidth{\labelwidth}{#1}
  \setlength{\labelsep}{2ex}
  \setlength{\leftmargin}{\parindent}
  \addtolength{\leftmargin}{\labelwidth}
  \addtolength{\leftmargin}{\labelsep}
  }}
  {\endlist}
\newcommand{\itemdesc}[1]{\item[#1\hspace*{\fill}]}

\begin{document}

\begin{descr}{$\vec{f}_{i\alpha j\beta}$}
  \itemdesc{$\vec{R}_i$} es la posición del centro de masas de la molécula $i$, $\vec{R}_i=\frac{1}{M_i}\sum_\alpha m_{i\alpha}\vec{r}_{i\alpha}$.
  \itemdesc{$M_i$} es la masa total de la molécula $i$, $M_i=\sum_\alpha m_{i\alpha}$.
  \itemdesc{$\vec{F}_i$} es la fuerza total en el centro de masas de la molécula $i$, $\vec{F}_i=\sum_{\alpha j\beta}\vec{f}_{i\alpha j\beta}$.
  \itemdesc{$\vec{f}_{i\alpha j\beta}$} es la fuerza existente entre el átomo $\alpha$ de la molécula $i$ y el átomo $\beta$ de la molécula $j$.
  \itemdesc{$\vec{J}_i$} es el tensor momento de inercia de la molécula $i$, $\vec{J}_i=\sum_\alpha m_{i\alpha}(s_{i\alpha}^2\vec{I}-\vec{s}_{i\alpha}\,\vec{s}_{i\alpha}^T)$.
  \itemdesc{$\vec{s}_{i\alpha}$} es el vector posición del átomo $\alpha$ respecto al centro de masas de la molécula $i$, $\vec{s}_{i\alpha}=\vec{r}_{i\alpha}-\vec{R}_i$.
  \itemdesc{$\vec{\omega}_i$} es la velocidad angular de la molécula $i$.
  \itemdesc{$\vec{N}_i$} es el momento de la fuerza total sobre la molécula $i$, $\vec{N}_i=\sum_\alpha\vec{s}_{i\alpha}\times\vec{f}_{i\alpha}$.
\end{descr}

\end{document}

enter image description here (忽略缺失的重音)

相比之下,简单的itemize环境(如 Peter Grill 的回答)为您提供了这种对齐:

enter image description here

(请注意,我也在自定义环境中更改了垂直间距。)

答案3

如果您的定义非常统一,您可以将它们放在alignVafa 建议的环境中:

\begin{align}
    x &:= (m*n)+P+Q\\
    n &:= ...
\end{align}

但是如果定义的左侧差异太大,它可能看起来就不再好了。也可能右侧需要多行。在这种情况下,您需要将其拆分,这是一个明智的话题,比较https://stackoverflow.com/questions/1578127/how-do-i-break-a-long-equation-over-lines. 对于无编号的方程式,你可以这样做

\begin{align*}
    x &:= (m*n)+P+Q+R+S+...\\
    &\quad +Y+Z+\pi\\
    n &:= ...
\end{align*}

此外,通过添加描述性文本来赋予您定义的变量一些含义始终是明智的。使用对齐方程有两种可能性:

\begin{align}
    x &:= (m*n)+P+Q+R+S+... && \text{number of birds in the cage}\\
    \intertext{where $n$ is the usual number:}
    n &:= ...
\end{align}

答案4

KOMA 类提供labeling环境,其标签是左对齐的。

\documentclass{scrartcl}

\begin{document}
\begin{labeling}{MM}
\item[$\vec{R}_i$] Position des Massenmittelpunktes 
     $\vec{R}_i=\frac{1}{M_i}\sum_\alpha m_{i\alpha}\vec{r}_{i\alpha}$
\item[$\vec{f}_{i\alpha j\beta}$] es la fuerza existente entre el tomo
     $\alpha$ de la molcula $j$
\end{labeling}

\end{document}

如果您不想使用 KOMA 类,您可以查看scrartcl.cls并将其定义复制labeling到您的序言中。

相关内容