LaTeX、KaTeX、MathJax 简介

  • MathJax 与 KaTeX 是用于网页渲染数学公式的引擎,支持 LaTeX 语法的一部分。而 LaTeX 是完整的排版系统,用于创建文档。

LaTeX 与 MathJax :

  1. 应用场景和功能范围不同。LaTeX 是完整的排版系统,处理文档整体;MathJax 专注网页数学公式渲染,只处理数学部分,文本用 HTML。
  2. 语法支持子集,MathJax 只实现 LaTeX 数学模式宏,像数组环境只支持部分预定义字符。
  3. 特定命令支持差异,比如 \mathbld 在 MathJax 不支持,还有 eqnarray 使用有区别。
  4. 错误处理,MathJax 更容忍语法错误。
  5. 文本模式处理,LaTeX 有丰富文本命令,MathJax 几乎不处理,除了少数如 \ref 和 \text {} 里的部分扩展。

KaTeX 与 MathJax 的具体区别:

  1. 体量与功能:KaTeX 轻,专注数学渲染;MathJax 综合,支持多种输入输出。
  2. 渲染速度:KaTeX 快,MathJax3.0 提升但仍可能慢。
  3. 语法支持:MathJax 支持更多 LaTeX 语法。
  4. 输出格式:MathJax 支持更多如 SVG。
  5. 扩展与辅助:MathJax 有扩展包和辅助技术。
  6. 浏览器兼容:MathJax 支持旧版,KaTeX 对旧版差但性能一致。
  7. 社区成熟度:MathJax 社区更成熟。

CDN 部署 MathJax

Gokong Space 现在使用的插件是 glerium/TypechoMathJax: 一款用于Typecho的MathJax插件

使用方法

  1. 在 Github 下载 .zip 文件;
  2. 上传到 plugins 文件夹并解压;
  3. 把解压后的文件重命名为 “TypechoMathJax”,这点很重要
  4. 在 Typecho后台启用 TypechoMathJax 插件;
  5. 你可以选择调整数学公式的字体大小。

该插件的本质是链接了 CDN 地址,相较于服务器部署要简单轻便很多。
推荐需要 MathJax 渲染又不想太折腾的小伙伴尝试。

一些资源

一些特殊的常用模板

分行并使等号对齐

$$\begin{aligned}
a+b&=m+n\\\
&=c+d\\\
&=e+f
\end{aligned}$$

$$\begin{aligned}
a+b&=m+n\\
&=c+d\\
&=e+f
\end{aligned}$$

方程组的大括号

$$\begin{cases}
x=x(t)\\\
y=y(t)\\\
z=z(t)
\end{cases}$$

$$\begin{cases}
x=x(t)\\
y=y(t)\\
z=z(t)
\end{cases}$$

行列式

$$\begin{vmatrix}
\vec{i}&\vec{j}&\vec{k} \\\
F_{x}&F_{y}&F_{z} \\\
G_{x}&G_{y}&G_{z} 
\end{vmatrix}$$

$$\begin{vmatrix}
\vec{i}&\vec{j}&\vec{k} \\
F_{x}&F_{y}&F_{z} \\
G_{x}&G_{y}&G_{z}
\end{vmatrix}$$

括号

$\text{\\left[}$ 与 $\text{\\right]}$ 可以自动适配大小。

写在最后

希望这篇文章能给你带来一点点帮助,同时如果你有更好的想法,欢迎留言交流~