如何在 ConTeXt 中正确地绝对值和范数?我目前使用:
\m{|x|\leq|y|}
但是高度不能适应内容( 也是一样\mid
)。
答案1
你可以使用\fenced
命令。例如:
\starttext
\startformula
\fenced[doublebar]{\int \psi(r) dr} = 1
\stopformula
\stoptext
您可以在以下位置找到已定义的围栏列表math-fen.mkiv
。
如果您不想使用宏,也可以直接使用带有和前缀的\fenced
栅栏。它们也会自动缩放并且必须匹配,就像和 一样。\L
\R
\left
\right
\starttext
\startformula
\Ldoublebar \int \psi(r) dr \Rdoublebar = 1
\stopformula
\stoptext
输出是一样的。
答案2
除了现有的答案之外,我建议将这些添加为新命令,
\definemathfence[abs][left="007C,right="007C,define=yes]
\definemathfence[norm][left="2016,right="2016,define=yes]
完整示例如下:
\definemathfence[abs][left="007C,right="007C,define=yes]
\definemathfence[norm][left="2016,right="2016,define=yes]
\starttext
\startTEXpage[offset=4mm]
Now we can type
\startformula
\abs{x}\geq\abs{\frac{y}{z}},\quad \norm{x}\geq\norm{\frac{y}{z}}
\stopformula
And if you think the sizes get wrong, you can adjust them like this:
\startformula
\abs{x}\geq\abs[size=2]{\frac{y}{z}},\quad \norm{x}\geq\norm[size=2]{\frac{y}{z}}
\stopformula
\stopTEXpage
\stoptext