如何使用 TeX 在 MathJax 中实现弹性双括号?例如,
TeX 包 stmaryrd 有这个,但 MathJax 不支持任意包的导入。
我希望双括号适合所有尺寸。
奖励:这在 AsciiMath 中可行吗?
MathJax TeX 字体不包含这些括号所需的字符。但是您可以使用类似\left[\!\!\left[x^2\over 2\right]\!\!\right]
or\left[\!\left[x+1\right]\!\right]
甚至[\![x+1]\!]
. 不幸的是,您需要的退格 ( \!
) 数量取决于内容,因此自动化此操作并不容易。这也取决于使用的字体,因此如果您在自己的网站上执行此操作并使用 HTML-CSS(而不是 SVG 或 CommonHTML 输出),您可能希望禁用本地 STIX 字体,因为间距会有所不同。
或者,您可以将页面配置为使用 STIX-Web 字体,其中确实包含所需的字符(尽管不是每个人都喜欢它们的外观),但您还必须将正确的名称和字符添加到 TeX 分隔符列表中。就像是
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
"HTML-CSS": {fonts: ['STIX-web']},
SVG: {font: 'STIX-Web'},
TeX: {Augment: {
Definitions: {
delimiter: {
'\\llbracket': '27E6',
'\\rrbracket': '27E7
}
}
}}
});
</script>
在加载自身的脚本之前添加MathJax.js
应该这样做。请注意,这适用于 HTML-CSS 和 SVG 输出,但不适用于 CommonHTML 输出,因为后者目前仅使用 MathJax TeX 字体。