需要注意的是:
LaTeX2e内核中定义的\cases和amsmath宏包重定义的cases环境并不相同。
\documentclass{article}
\begin{document}
\[
|x|=\cases{x,&if $x\ge0$;\cr
-x,&otherwise.\cr}
\]
\end{document}
重点要转到关注amsmath.dtx中的有关定义:
% line 2604~2614
\renewenvironment{cases}{%
\matrix@check\cases\env@cases
}{%
\endarray\right.%
}
\def\env@cases{%
\let\@ifnextchar\new@ifnextchar
\left\lbrace
\def\arraystretch{1.2}%
\array{@{}l@{\quad}l@{}}%
}cases环境本质是是一个带\lbrace的array环境,与\jot并无关系
所以...似乎patch一下\arraystretch即可实现第二个需求:
\documentclass{ctexart}
\usepackage{amsmath,amsfonts}
\makeatletter
\def\env@cases{%
\let\@ifnextchar\new@ifnextchar
\left\lbrace
\def\arraystretch{2.5}%
\array{@{}l@{\quad}l@{}}%
}
\makeatother
\begin{document}
\[
\begin{cases}
\dfrac{1}{1} + \dfrac{2}{2} \neq \dfrac{3}{3} \\
\dfrac{1}{1} + \dfrac{2}{2} = \dfrac{3}{3}
\end{cases}
\]
\[
\begin{cases}
\dfrac{1}{1} + \dfrac{2}{2} \neq \dfrac{3}{3} \\
\dfrac{1}{1} + \dfrac{2}{2} = \dfrac{3}{3}
\end{cases}
\]
\[
\begin{cases}
\dfrac{1}{1} + \dfrac{2}{2} \neq \dfrac{3}{3} \\
\dfrac{1}{1} + \dfrac{2}{2} = \dfrac{3}{3}
\end{cases}
\]
\[
\begin{cases}
\dfrac{1}{1} + \dfrac{2}{2} \neq \dfrac{3}{3} \\
\dfrac{1}{1} + \dfrac{2}{2} = \dfrac{3}{3}
\end{cases}
\]
\[
\begin{cases}
\dfrac{1}{1} + \dfrac{2}{2} \neq \dfrac{3}{3} \\
\dfrac{1}{1} + \dfrac{2}{2} = \dfrac{3}{3}
\end{cases}
\]
\end{document}
嗯...效果并不是很好...




















问 如何正确使用原语`\jot`来修改数学公式的行距?下面的例子中对`\jot`的修改为何失效?