6

如何使用 TeX 在 MathJax 中实现弹性双括号?例如,

使用双括号的数学

TeX 包 stmaryrd 有这个,但 MathJax 不支持任意包的导入。

我希望双括号适合所有尺寸。

奖励:这在 AsciiMath 中可行吗?

4

1 回答 1

8

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 字体。

于 2017-03-13T21:55:22.807 回答