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

什么是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可以让你在你的网页上动态的创建公式。

b8f82fd1aef6aed1fad6b159d682b6ba.png

如何使用

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

可以通过上面的从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\)

\[

\newcommand{\R}{\mathbb{R}}

\newcommand{\E}{\mathbb{E}}

\newcommand{\x}{\mathbf{x}}

\newcommand{\y}{\mathbf{y}}

\newcommand{\wv}{\mathbf{w}}

\newcommand{\av}{\mathbf{\alpha}}

\newcommand{\bv}{\mathbf{b}}

\newcommand{\N}{\mathbb{N}}

\newcommand{\id}{\mathbf{I}}

\newcommand{\ind}{\mathbf{1}}

\newcommand{\0}{\mathbf{0}}

\newcommand{\unit}{\mathbf{e}}

\newcommand{\one}{\mathbf{1}}

\newcommand{\zero}{\mathbf{0}}

\]

独立于其他文字的

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

或者

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

可以使用 $$\alpha+\beta=\gamma$$

或者

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

更复杂的公式显示:loss function $L(\wv; \x, y)$gradient or sub-gradienthinge loss$\max \{0, 1-y \wv^T \x \}, \quad y \in \{-1, +1\}$$\begin{cases}-y \cdot \x & \text{if $y \wv^T \x <1$}, \\ 0 &

\text{otherwise}.\end{cases}$

logistic loss$\log(1+\exp( -y \wv^T \x)), \quad y \in \{-1, +1\}$$-y \left(1-\frac1{1+\exp(-y \wv^T \x)} \right) \cdot \x$

squared loss$\frac{1}{2} (\wv^T \x - y)^2, \quad y \in \R$$(\wv^T \x - y) \cdot \x$

When $a \ne 0$, there are two solutions to \(ax^2 + bx + c = 0\) and they are

$$x = {-b \pm \sqrt{b^2-4ac} \over 2a}.$$$$\left[-\frac{\mathrm{SW}\;\mathrm{periods}}{\epsilon_1}\right] $$

$$ {{\Lambda}} = \frac{2\,\sin \,\phi }{{\sqrt 3 \,\left( {3 - \sin \,\phi } \right)}} $$

$$\mathrm{\mathcal{B}}\left({\Lambda}_{\mathrm{b}}^0\to \Lambda \beta^{\prime}\right) $$

$$\LARGE XX大学,数学与应用数学 \hfill 2009年至今 $$

更多关于数学公式的使用可以参照http://docs.mathjax.org/en/latest/start.html文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值