You*_*jae 4 javascript math katex
这个问题类似于 6 年前的 MathJax 问题;如何在 MathJax 中对公式进行装箱?
如何用\boxed{...}KaTex实现?
预期输出如下;
KaTex 代码在environments.js 中显示了一些 amsmath 翻译,但它们只是从 amsmath 函数到现有KaTex 表达式的 1:1 转换。
KaTex 似乎利用 amsmath.sty但我不知道如何应用它。
我是 KaTeX 的开发人员之一。我们没有盒子。使用一些自定义 CSS 在整个方程周围添加框应该不会太难。例如,您可以使用KaTeX 网页并输入公式c_i=\sum_jA_{ij}。然后编辑该页面的 CSS(使用浏览器中的 Web 开发工具或您自己的此文件副本)以向该类添加另外两种样式.katex:
.katex {
border: 0.0625em solid currentcolor;
padding: 0.5em;
}
Run Code Online (Sandbox Code Playgroud)
现在公式已装箱。使用em作为所有内容的长度单位与 KaTeX 的其他 CSS 一致,这样做可以使公式作为一个整体缩放,无论周围文本的字体大小如何。如果您只想装箱某些公式,请将它们嵌套在某些公式中<div class="boxedmath">,并将该嵌套用作附加 CSS 选择器。
可以很容易地选择将其他类添加到顶层<span class="katex">。如果您认为这有用,请随时发布功能请求,甚至使用您自己的实现发布拉取请求。
\boxed在数学模式下工作会更困难。您基本上会执行与上面类似的操作,但为盒装部分添加了一个新引入的类。您还需要一些代码来根据内框的外边距计算框的外边距,以便代码与 CSS 完全匹配。你应该计算出 LaTeX 使用的填充和线宽,以便 KaTeX 尽可能匹配。这就是 LaTeX 实现发挥作用的地方。相当可行,但有些工作。如果您认为有用,再次值得提出功能请求或拉取请求。
如果严格遵守的话,amsmath.sty那就更难了。KaTeX 仍然缺乏许多通常用于此目的的间距基元,特别是可拉伸空间。我强烈建议使用面向 CSS 的实现。
为了正确支持所有用例,最好也找到适合盒子的 MathML 渲染。虽然 KaTeX 不使用 MathML 来显示数学,但为了屏幕阅读器和类似辅助技术的可访问性,它仍然包含 MathML。
| 归档时间: |
|
| 查看次数: |
1222 次 |
| 最近记录: |