
如何在 ConTeXt 中正確使用絕對值和範數?我目前使用:
\m{|x|\leq|y|}
但高度不適應內容(同樣的情況\mid
)。
答案1
你可以使用\fenced
命令。例如:
\starttext
\startformula
\fenced[doublebar]{\int \psi(r) dr} = 1
\stopformula
\stoptext
您可以在中找到已定義圍欄的列表math-fen.mkiv
。
如果不想使用宏,也可以直接使用帶有and前綴的\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