COGS MathJax 基础教程
前言
由于见到机房有些许同学不会使用 LaTeX 导致出的题题面不规范、无法在题面中输入想要的数学公式等问题频发,特此撰写该教程供大家参考。本人能力不及,写作中难免出现各种问题,若有疏漏,请联系修正!
首先推荐两个识别手写 LaTeX 符号的网站:
-
Symbolizer: LaTeX 字符识别:一个完全离线的手写 LaTeX 符号识别 Demo,推理在浏览器本地完成,模型通过 WASM 加载,无需网络。
点开试用
-
Detexify:任何使用 LaTeX 的人都知道,在 symbols-a4.pdf 中找到一个你记不住的符号是多么耗费时间。Detexify 旨在简化这一搜索过程。
点开试用
MathJax 简介
MathJax 是一个基于 JavaScript 的库,可以将 LaTeX、MathML 以及 AsciiMath 渲染成高质量的数学符号。其使用 HTML + CSS 或 SVG 渲染,而非图片,从而保证了公式的清晰度。MathJax 因其安装使用简单,且客户端无需额外操作就可直接显示公式而被广泛使用。
MathJax 目前最新版本为 MathJax v4.1.1,COGS 使用的版本为 MathJax v2.2。但实际上 MathJax v2.2 就能够完成我们的大部分需求。MathJax v2.2 官方文档(PDF)。但如果有特殊需求,后文将会介绍如何强制使用 MathJax v4.1.1。
MathJax 基础教程
键入数学公式
数学公式分为两种:行内公式与行间公式。键入行内公式请使用 \(\verb|$ ... $|\) 或 $\verb|\( ... \)|$ 将内容包裹1。键入行间公式请使用 \(\verb|$$ ... $$|\) 或 $\verb|\[ ... \]|$ 将内容包裹。
在 COGS 中键入行间公式
在 COGS 中正常使用 \(\verb|$ ... $|\) 和 $\verb|\( ... \)|$ 是完全没有问题的,但如果尝试键入多行的行间公式,例如:
会导致渲染出错:
这是因为 COGS 的编辑器在用户输入换行符的时候会开一个新的段落,MathJax 只会渲染同一个段落的公式。点击“HTML 代码”即可看到原因:
解决方法有两种,第一种是把公式写成一行,像这样:
或者直接在 HTML 模式里写公式,亦或是在其他在线编辑器写好 LaTeX 代码之后直接在 HTML 公式里粘贴进去:
这时候关闭 HTML 模式回到正常模式会发现换行全部消失,别担心,这是正常情况,如果返回 HTML 模式就能看到换行了:
渲染结果:
-
MathJax 默认无法使用 \(\verb|$ ... $|\) 键入行内公式,原因是美元符号 \(\verb|$|\) 在国外的文章中过于常见。而 COGS 对 MathJax 进行了配置,使得其可以使用 \(\verb|$ ... $|\) 键入行内公式。↩