MathJax
   HOME

TheInfoList



OR:

MathJax is a
cross-browser Cross-browser compatibility is the ability of a website or web application to function across different Web browser, browsers and Fault tolerance, degrade gracefully when browser features are absent or lacking. History Background The history ...
JavaScript library A JavaScript library is a library of pre-written JavaScript code that allows for easier development of JavaScript-based applications, especially for AJAX and other web-centric technologies. Libraries With the expanded demands for JavaScript, an ea ...
that displays
mathematical notation Mathematical notation consists of using symbols for representing operations, unspecified numbers, relations and any other mathematical objects, and assembling them into expressions and formulas. Mathematical notation is widely used in mathematic ...
in
web browser A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used on ...
s, using
MathML Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web ...
,
LaTeX Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latexes are found in nature, but synthetic latexes are common as well. In nature, latex is found as a milky fluid found in 10% of all flowering plants (angiosperms ...
and
ASCIIMathML AsciiMath is a client-side mathematical markup language for displaying mathematical expressions in web browsers.. Using the JavaScript script ASCIIMathML.js, AsciiMath notation is converted to MathML at the time the page is loaded by the browser, ...
markup. MathJax is released as
open-source software Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Op ...
under the Apache License. The MathJax project started in 2009 as the successor to an earlier JavaScript mathematics formatting library,
jsMath jsMath was a JavaScript library for displaying mathematics in browsers in a cross-platform way. jsMath is free software released under the Apache License. jsMath was succeeded by MathJax. See also * MathJax * TeX and LaTeX, from which j ...
, and is managed by the
American Mathematical Society The American Mathematical Society (AMS) is an association of professional mathematicians dedicated to the interests of mathematical research and scholarship, and serves the national and international community through its publications, meetings, ...
. The project was founded by the American Mathematical Society, Design Science, and the
Society for Industrial and Applied Mathematics Society for Industrial and Applied Mathematics (SIAM) is a professional society dedicated to applied mathematics, computational science, and data science through research, publications, and community. SIAM is the world's largest scientific socie ...
and is supported by numerous sponsors such as the
American Institute of Physics The American Institute of Physics (AIP) promotes science and the profession of physics, publishes physics journals, and produces publications for scientific and engineering societies. The AIP is made up of various member societies. Its corpora ...
and
Stack Exchange Stack Exchange is a network of question-and-answer (Q&A) websites on topics in diverse fields, each site covering a specific topic, where questions, answers, and users are subject to a reputation award process. The reputation system allows th ...
. MathJax is used by web sites including
arXiv arXiv (pronounced "archive"—the X represents the Greek letter chi ⟨χ⟩) is an open-access repository of electronic preprints and postprints (known as e-prints) approved for posting after moderation, but not peer review. It consists of ...
,
Elsevier Elsevier () is a Dutch academic publishing company specializing in scientific, technical, and medical content. Its products include journals such as ''The Lancet'', ''Cell'', the ScienceDirect collection of electronic journals, '' Trends'', th ...
's
ScienceDirect ScienceDirect is a website which provides access to a large bibliographic database of scientific and medical publications of the Dutch publisher Elsevier. It hosts over 18 million pieces of content from more than 4,000 academic journals and 30,0 ...
,
MathSciNet MathSciNet is a searchable online bibliographic database created by the American Mathematical Society in 1996. It contains all of the contents of the journal ''Mathematical Reviews'' (MR) since 1940 along with an extensive author database, links ...
,
n-category cafe John Carlos Baez (; born June 12, 1961) is an American mathematical physicist and a professor of mathematics at the University of California, Riverside (UCR) in Riverside, California. He has worked on spin foams in loop quantum gravity, appl ...
,
MathOverflow MathOverflow is a mathematics question-and-answer (Q&A) website, which serves as an online community of mathematicians. It allows users to ask questions, submit answers, and rate both, all while getting merit points for their activities. It is a ...
,
Wikipedia Wikipedia is a multilingual free online encyclopedia written and maintained by a community of volunteers, known as Wikipedians, through open collaboration and using a wiki-based editing system. Wikipedia is the largest and most-read refer ...
(on the backend),
Scholarpedia ''Scholarpedia'' is an English-language wiki-based online encyclopedia with features commonly associated with open-access online academic journals, which aims to have quality content in science and medicine. ''Scholarpedia'' articles are written ...
,
Project Euclid Project Euclid is a collaborative partnership between Cornell University Library and Duke University Press which seeks to advance scholarly communication in theoretical and applied mathematics and statistics through partnerships with independent and ...
journals, IEEEXplore,
Publons Publons was a commercial website that provided a free service for academics to track, verify, and showcase their peer review and editorial contributions for academic journals. It was launched in 2012 and was bought by Clarivate in 2017. It claime ...
,
Coursera Coursera Inc. () is a U.S.-based massive open online course provider founded in 2012 by Stanford University computer science professors Andrew Ng and Daphne Koller. Coursera works with universities and other organizations to offer online courses, ...
, and the
All-Russian Mathematical Portal The All-Russian Mathematical Portal (better known as Math-Net.Ru) is a web portal that provides extensive access to all aspects of Russian mathematics, including journals, organizations, conferences, articles, videos, libraries, software, and people ...
.


Features

MathJax is downloaded as part of a web page, scans the page for mathematical markup, and typesets the mathematical information accordingly. Thus, MathJax requires no installation of software or extra
fonts In metal typesetting, a font is a particular size, weight and style of a typeface. Each font is a matched set of type, with a piece (a "sort") for each glyph. A typeface consists of a range of such fonts that shared an overall design. In mode ...
on the reader's system. This allows MathJax to run in any browser with JavaScript support, including mobile devices. MathJax can display math by using a combination of
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
and
CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone techno ...
or by using the browser's native MathML support, when available. The exact method MathJax uses to typeset math is determined by the capabilities of the user's browser, fonts available on the user's system, and configuration settings. MathJax v2.0-beta introduced SVG rendering. In the case of HTML and CSS typesetting, MathJax maximizes math display quality by using math fonts if available and by resorting to images for older browsers. For newer browsers that support
web fonts Web typography is the use of fonts on the World Wide Web. When HTML was first created, font faces and styles were controlled exclusively by the settings of each web browser. There was no mechanism for individual Web pages to control font display ...
, MathJax provides a comprehensive set of web fonts, which MathJax downloads as needed. If the browser does not support web fonts, MathJax checks whether valid
fonts In metal typesetting, a font is a particular size, weight and style of a typeface. Each font is a matched set of type, with a piece (a "sort") for each glyph. A typeface consists of a range of such fonts that shared an overall design. In mode ...
are available on the user's system. If this does not work, MathJax provides images of any symbols needed. MathJax can be configured to enable or disable web fonts, local fonts, and image fonts. MathJax uses the STIX fonts for including mathematics in web pages. Installing the fonts on the local computer improves MathJax’s typesetting speed. MathJax can display mathematical notation written in
LaTeX Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latexes are found in nature, but synthetic latexes are common as well. In nature, latex is found as a milky fluid found in 10% of all flowering plants (angiosperms ...
or
MathML Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web ...
markup. Because MathJax is meant only for math display, whereas LaTeX is a document layout language, MathJax only supports the subset of LaTeX used to describe mathematical notation. MathJax also supports math accessibility by exposing MathML through its API to
assistive technology Assistive technology (AT) is a term for assistive, adaptive, and rehabilitative devices for people with disabilities and the elderly. Disabled people often have difficulty performing activities of daily living (ADLs) independently, or even with ...
software, as well as the basic WAI-ARIA "role" and older "altext" attributes. The MathJax architecture is designed to support the addition of input languages and display methods in the future via dynamically loaded modules. MathJax also includes a JavaScript API for enumerating and interacting with math instances in a page.


Browser compatibility

MathJax renders math in most popular browsers, including
Internet Explorer Internet Explorer (formerly Microsoft Internet Explorer and Windows Internet Explorer, commonly abbreviated IE or MSIE) is a series of graphical user interface, graphical web browsers developed by Microsoft which was used in the Microsoft Wind ...
6+,
Firefox Mozilla Firefox, or simply Firefox, is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. It uses the Gecko rendering engine to display web pages, which implements current and ...
3+,
Google Chrome Google Chrome is a cross-platform web browser developed by Google. It was first released in 2008 for Microsoft Windows, built with free software components from Apple WebKit and Mozilla Firefox. Versions were later released for Linux, macOS ...
0.3+,
Safari A safari (; ) is an overland journey to observe wild animals, especially in eastern or southern Africa. The so-called "Big Five" game animals of Africa – lion, leopard, rhinoceros, elephant, and Cape buffalo – particularly form an importa ...
2.0+,
Opera Opera is a form of theatre in which music is a fundamental component and dramatic roles are taken by singers. Such a "work" (the literal translation of the Italian word "opera") is typically a collaboration between a composer and a librett ...
9.5+, iPhone/
iPad The iPad is a brand of iOS and iPadOS-based tablet computers that are developed by Apple Inc. The iPad was conceived before the related iPhone but the iPhone was developed and released first. Speculation about the development, operating s ...
Safari, and the Android browser. Some older versions of browsers do not support web fonts (with the @font-face
CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone techno ...
construct), so they have to use MathJax image font mode. The browser compatibility list is available at the official site.


Plugin support

MathJax can be easily added to many popular web platforms.


Node.js

MathJax can be used in NodeJS since version 3; for version 2, the MathJax-node library provides NodeJS compatibility.


Equation editor compatibility

Any MathJax equation displayed in a supported browser can be copied out in
MathML Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web ...
or
LaTeX Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latexes are found in nature, but synthetic latexes are common as well. In nature, latex is found as a milky fluid found in 10% of all flowering plants (angiosperms ...
format via "Show Math as" sub-menu if right-button clicked or control-clicked on it. Then it can be pasted in any equation editor that supports MathML or LaTeX, such as
Mathematica Wolfram Mathematica is a software system with built-in libraries for several areas of technical computing that allow machine learning, statistics, symbolic computation, data manipulation, network analysis, time series analysis, NLP, optimizat ...
,
MathType MathType is a software application created by Design Science that allows the creation of mathematical notation for inclusion in desktop and web applications. After Design Science was acquired by Maths for More in 2017, their WIRIS web equation ...
,
MathMagic MathMagic is a mathematical WYSIWYG equation editor, available for Windows, macOS, Android and iOS since its debut in 1998. MathMagic is known for its DTP quality equations and is widely used by Adobe InDesign and QuarkXPress users. MathMagic ...
, Firemath for re-using. Equations generated in
MathML Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web ...
or
LaTeX Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latexes are found in nature, but synthetic latexes are common as well. In nature, latex is found as a milky fluid found in 10% of all flowering plants (angiosperms ...
format by any 3rd party equation editor can be used in MathJax enabled web pages.


TeX support

MathJax replicates the math environment commands of LaTeX.
AMS-LaTeX AMS-LaTeX is a collection of LaTeX document classes and packages developed for the American Mathematical Society (AMS). Its additions to LaTeX include the typesetting of multi-line and other mathematical statements, document classes, and fonts c ...
math commands are supported via extensions. MathJax also supports TeX macros and miscellaneous formatting like \color and \underline.


MathML support

MathJax added partial support for
MathML Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web ...
2.0 and some MathML 3.0 constructs in its beta 2 release. MathJax supports presentation MathML and, as of version 2.2, provides experimental support for content MathML.


CDN servers

The MathJax site has been providing a
content delivery network A content delivery network, or content distribution network (CDN), is a geographically distributed network of proxy servers and their data centers. The goal is to provide high availability and performance by distributing the service spatially re ...
(CDN) where the JavaScript needed for MathJax to work can be loaded by the browser at run time from the CDN. This simplifies the installation and ensures the latest version of the library is always used. Over time usage of the server has grown from 1.3TB per month traffic in 2011 to 70TB per month in 2017. Due to increasing cost of hosting the server, the main CDN server shut down at the end of April 2017. Alternative third party CDN servers are available.


See also

* :Symbol typefaces *
Google Chart API The Google Chart API is an interactive Web service (now deprecated) that creates graphical charts from user-supplied data. Google servers create a PNG image of a chart from data and formatting parameters specified by a user's HTTP request. T ...
*
KaTeX Katex (; av, Катихъ) is a village at the foot of the Caucasian Mountains and the second most populous municipality in the Balakan District of Azerbaijan. The village (called Katekhi () in Georgian) and its Katekhi Church are mentioned by Ca ...
- JavaScript alternative to MathJax


References

{{Reflist, 30em


External links


Official website
*MediaWiki extensions: ** SimpleMathJax **
MathJax MathJax is a cross-browser JavaScript library that displays mathematical notation in web browsers, using MathML, LaTeX and ASCIIMathML markup. MathJax is released as open-source software under the Apache License. The MathJax project started i ...
Free mathematics software JavaScript libraries Software using the Apache license Symbol typefaces