左对齐多行方程和 \newenvironment

左对齐多行方程和 \newenvironment

我正在建立一个积分表,供自己使用。我需要简单的东西:方程式必须左对齐,有时我需要在等号上对齐,有时为了节省空间,我需要在同一行上放置两个方程式。

\begin{fleqn}[0pt]
\setlength{\jot}{6pt}
\begin{align*}
    &\int f(x) \ldots \mbox{long expression here} \ldots dx = F(x) + C \\
    &\int f(x) \ldots \mbox{long expression here} \ldots dx = F(x) + C \\
    &\int f(x) dx = F(x) + C &&\int f(x) dx = F(x) + C \\
    &\int f(x) \ldots \mbox{long expression here} \ldots dx = F_1(x) + C =  \\
    &\qquad\qquad = F_1(x) + C \\
\end{align*}
\end{fleqn}

首先我不满意,我无法在一行中设置 2 个方程的对齐点,也无法在等号上对齐方程。大多数环境(、、、tabular... )只执行一项工作,当我尝试混合它们时,我总是会遇到一些错误。tabbedsplit

其次,我想创建一个新的环境

\newenvironment{mathtable}
{ \begin{fleqn}[0pt] \setlength{\jot}{6pt} \begin{align*} }
{ \end{align*} \end{fleqn} }

但它显示了一个错误,似乎我无法align在里面使用newenvironment。做了很多研究,使用了环境包, 用过的\csname等等,但是我不知道如何搭建这个环境。

答案1

关于第一点,您提供的信息太少,无法提供建议。

对于第二点,您可以按照以下方式定义您的mathtable环境:

\documentclass{article}
\usepackage{nccmath}
\newenvironment{mathtable}
  {\fleqn[0pt] \setlength{\jot}{6pt} \csname align*\endcsname}
  {\csname endalign*\endcsname\endfleqn}

\begin{document}

\begin{mathtable}
    &\int f(x) \ldots \mbox{long expression here} \ldots dx = F(x) + C \\
    &\int f(x) \ldots \mbox{long expression here} \ldots dx = F(x) + C \\
    &\int f(x) dx = F(x) + C &&\int f(x) dx = F(x) + C \\
    &\int f(x) \ldots \mbox{long expression here} \ldots dx = F_1(x) + C =  \\
    &\qquad\qquad = F_1(x) + C
\end{mathtable}

\end{document}

当为对齐环境的名称时,不能在新环境的定义中使用\begin{foo}and 。因此,必须在其位置使用and形式(或对于 *-变体使用and )。\end{foo}fooamsmath\foo\endfoo\csname foo*\endcsname\csname endfoo*\endcsname

相关内容