我想在 MathJax 中排版一些分段方程,並在分段條件下對齊不等式符號。使用案例環境並添加更多&符號確實在某種程度上對齊了我想要的部分,但也增加了我不想要的額外水平空間。我可以透過添加空白字元來實現我想要的效果,但這需要為不同長度的每一行調整空白字元的確切數量和類型,並且還取決於所使用的渲染器。是否有一種更優雅、更自動、獨立於渲染器運作的方式?
這是一個沒有對齊的簡單範例:
d_0(t) := d_{max} × \begin{cases}
0 & : −∞ ≤ t < T \\
1 & : T ≤ t < ∞
\end{cases}
以下是我透過添加 & 符號來對齊小於或等於號(請注意左值和 LToE 符號之間的額外空格)得到的結果:
d_0(t) := d_{max} × \begin{cases}
0 & : −∞ & ≤ t < T \\
1 & : T & ≤ t < ∞
\end{cases}
這就是我想要在視覺上實現的效果,我透過添加幾個空白字元來實現:
d_0(t) := d_{max} × \begin{cases}
0 & : −∞ ≤ t < T \\
1 & : \;\;\;\: T ≤ t < ∞
\end{cases}
答案1
看來您需要三個對齊點:
- 在兩個值之前
- 冒號之前
\leq
在跡象之前
所以你必須&
在程式碼中使用 5 。 (原因請參見amsmath手冊)。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
d_0(t) := d_{\max} \times \left\{
\begin{alignedat}{3}
& 0 & & : \, & -\infty & \leq t < T \\
& f(t) & & : & T & \leq t < \infty
\end{alignedat}
\right.
\]
\end{document}
答案2
您可以\newcases
使用mathtools
:
\documentclass{article}
\usepackage{mathtools}
\makeatletter
\newcases{coloncases}% name
{\quad}% separation
{$\m@th\displaystyle##$\hfil}% left part
{$\m@th:$\ \hfil$\m@th\displaystyle##$}%
{\lbrace}% left delimiter
{.}% right delimiter
\makeatother
\begin{document}
\[
d_0(t)=
d_{\mathrm{max}}\times
\begin{coloncases}
0 & -\infty\le t<T \\
f(t) & T\le t\le\infty
\end{coloncases}
\]
\end{document}