MathJax:在浏览器上显示LaTeX等数学公式的JS引擎

MathJax:在浏览器上显示LaTeX等数学公式的JS引擎


发布日期: 1970-01-01 更新日期: 2016-09-03 编辑:bukun 浏览次数: 7543

标签:

摘要: MathJax介绍 MathJax是一个显示网络上数学公式的开源JavaScript引擎库,它可以在所有浏览器上面工作,其中就支持LaTeX,MathML和AsciiMath 符号,里面的数字会被MathJax使用JavaScript引擎解析成HTML,SVG...

MathJax介绍

MathJax是一个显示网络上数学公式的开源JavaScript引擎库,它可以在所有浏览器上面工作,其中就支持LaTeX,MathML和AsciiMath 符号,里面的数字会被MathJax使用JavaScript引擎解析成HTML,SVG或者是MathML 方程式,然后在现代的浏览器里面显示。 它的设计目标是利用最新的web技术,构建一个支持math的web平台。支持主要的浏览器和操作系统,包括那些移动设备。 对大部分用户而言它不需要安装,即没有插件需要下载也没有软件需要安装,所以网页作者可以编写包含数学公式的页面并有信心可以自然而容易的浏览到它们。 只需要在页面中包含MathJax脚本和一些数学公式,其他的事情交给MathJax来处理吧。

MathJax使用网络字体(大部分浏览器都支持)去产生高质量的排版,使其在所有分辨率都可缩放和显示,这远比使用包含公式的图片要有效得多。 MathJax也可以用于屏幕阅读器,让视力受损者也可以使用。

使用MathJax显示数学公式是基于文本的,而非图片。它可以被搜索引擎使用,这意味着方程式和页面上的文字一样是可以被搜索的。 MathJax允许页面作者使用TeX、LaTeX符号和 MathML 或者 AsciiMath 去书写公式。 MathJax甚至可以将Tex格式转化为MathML格式,使其可以被原生支持MathML格式的浏览器更多的渲染。转化为MathML格式后你可以复制粘贴它们到其他程序中。

MathJax是模块化的,所以它仅仅在需要时才加载它的组件,同时也可以被扩展以实现更多功能。 MathJax同时也是高度可配置的,允许作者作出更适宜网站自身的自定义。 最重要的,MathJax的API可以让你在你的网页上动态的创建公式。如何使用

使用MathJax很简单,只需要引入MathJax.js库,然后所有的都交给MathJax处理,我们可以去https://github.com/mathjax/MathJax下载最新版本的MathJax到自己网站,也可以使用MathJax提供的CDN直接使用。

最简单使用MathJax的方法是直接连接到公共的MathJax网上分发版(CND)上。当你使用MathJax CDN,就不需要你自己安装MathJax,并且你直接使用它了。

CDN将自动为你的用户选择最快最近的服务器传送数据。并且当bug被修正或者补丁出现后,它们在CDN会立即实现。你的页面将总是使用最新的版本。

本文就简单地使用MathJax提供的CDN来介绍。首先我们引入athJax.js

<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>

可以通过上面的从MathJax分布式服务器上获取最新的MathJax.js文件。而且加上TeX-AMS-MML_HTMLorMML使得我们可以支持Tex和MathML公式,如果浏览器支持MathML解析,那么就使用它,否则会使用HTML-with-CSS来显示数学公式。而且config=TeX-AMS-MML_HTMLorMML是最常用的,更多的config可以去参加官方文档(http://docs.mathjax.org/en/latest/start.html)。

下面使用TeX和LaTeX进行说明

TeX 和 LaTeX 格式的公式使用主要有两种形式,(1)、包含在段落之中的;(2)、独立于其他文字的。TeX 和 LaTeX 格式的默认分隔符是$$...$$和 [ ...],这个是独立于其他文字的,其实如果想要在段落之中显示TeX 和 LaTeX 格式的公式使,需要使用(...)。比如显示行内公式α+β=γ

效果为: \(\alpha+\beta=\gamma\)

代码为:

\(\alpha+\beta=\gamma\)

还可以显示为独立于其他文字的,效果如下:

$$ \alpha+\beta=\gamma $$ 或者

\[ \alpha+\beta=\gamma \]

代码相应的为:

$$ \alpha+\beta=\gamma $$

或者

\[ \alpha+\beta=\gamma \]

在一些文字系统中,有可能会需要进行一些特殊的处理,如本网站使用的是 MarkDown 语言,这样,上面的表示数学公式的反斜线,就需要进行一下转义才可以正常使用。

关注公众号
获取免费资源

随机推荐


Copyright © Since 2014. 开源地理空间基金会中文分会 吉ICP备05002032号

Powered by TorCMS

OSGeo 中国中心 邮件列表

问题讨论 : 要订阅或者退订列表,请点击 订阅

发言 : 请写信给: osgeo-china@lists.osgeo.org