MathJax
MathJax — кроссбраузерная библиотека JavaScript, которая отображает математические обозначения в веб-браузерах с использованием разметки MathML, LaTeX и ASCIIMathML.[4][5][6]
MathJax | |
---|---|
Тип | Математическое программное обеспечение |
Разработчик | Американское математическое общество |
Написана на | JavaScript |
Операционная система | Кроссплатформенность |
Первый выпуск | 2009[1] |
Последняя версия | 3.2.2[2] (8 июня 2022) |
Альфа-версия | 4.0.0[3] (2 октября 2022) |
Репозиторий | github.com/mathjax/MathJ… |
Состояние | активное |
Лицензия | Apache 2.0 |
Сайт | www.mathjax.org |
MathJax используется различными известными сайтами, включая ArXiv[7] а также раньше использовалась Википедией[8].
MathJax может использоваться в Node.JS начиная с версии 3.0;[9] для версии 2.0 необходима библиотека MathJax-node[10]
Характеристики
правитьMathJax загружается как часть веб-страницы, сканирует страницу на предмет математической разметки и соответствующим образом набирает математическую информацию. Таким образом, MathJax не требует установки программного обеспечения или дополнительных шрифтов в системе чтения. Это позволяет запускать MathJax в любом браузере с поддержкой JavaScript, включая мобильные устройства.[11]
MathJax может отображать математические данные, используя комбинацию HTML и CSS или используя встроенную поддержку MathML в браузере, когда она доступна. Точный метод, который MathJax использует для набора математических данных, определяется возможностями браузера пользователя, шрифтами, доступными в системе пользователя, и настройками конфигурации. MathJax v2.0-бета-версия представила SVG-рендеринг.[12]
В случае верстки HTML и CSS MathJax максимизирует качество отображения математики, используя математические шрифты, если они доступны, и прибегая к изображениям для старых браузеров. Для новых браузеров, поддерживающих веб-шрифты, MathJax предоставляет полный набор веб-шрифтов, которые MathJax загружает по мере необходимости. Если браузер не поддерживает веб-шрифты, MathJax проверяет, доступны ли допустимые шрифты в системе пользователя. Если это не работает, MathJax предоставляет изображения любых необходимых символов.[уточнить] MathJax можно настроить для включения или отключения веб-шрифтов, локальных шрифтов и графических шрифтов.
MathJax использует шрифты STIX для включения математики на веб-страницы. Установка шрифтов на локальный компьютер повышает скорость набора текста MathJax.[13]
MathJax может отображать математические обозначения, написанные в разметке LaTeX или MathML. Поскольку MathJax предназначен только для отображения математики, в то время как LaTeX является языком компоновки документов, MathJax поддерживает только подмножество LaTeX, используемое для описания математической нотации.[11]
MathJax также поддерживает доступность математики, предоставляя MathML через свой API для программного обеспечения вспомогательных технологий, а также базовые атрибуты WAI-ARIA «роль» и более старые атрибуты «altext».[уточнить]
Совместимость с браузерами
правитьMathJax отображает математические данные в большинстве популярных браузеров, включая Internet Explorer 6 , Firefox 3 , Google Chrome 0.3 , Safari 2.0 , Opera 9.5 , iPhone/iPad Safari и Android. Некоторые старые версии браузеров не поддерживают веб-шрифты (с помощью CSS-конструкции @font-face
), поэтому им приходится использовать режим шрифта MathJax image. Список совместимости браузеров доступен на официальном сайте.[14]
Совместимость с редактором уравнений
правитьЛюбое уравнение MathJax, отображаемое в поддерживаемом браузере, может быть скопировано в формате MathML или LaTeX через подменю Mathematica, MathType, MathMagic[англ.], Firemath[англ.] для повторного использования.[15]
, если щелкнуть по нему правой кнопкой мыши или кнопкой управления. Затем его можно вставить в любой редактор уравнений, поддерживающий MathML или LaTeX, такой какMathJax копирует команды математической среды LaTeX. Математические команды AMS-LaTeX поддерживаются с помощью расширений. MathJax также поддерживает макросы TeX и разное форматирование, например \color
и \underline
.
Поддержка MathML
правитьMathJax добавил частичную поддержку MathML 2.0 и некоторых конструкций MathML 3.0 в бета-версии 2. MathJax поддерживает презентационный MathML и, начиная с версии 2.2, предоставляет экспериментальную поддержку контента MathML.[16]
Примечания
править- ↑ История MathJax (англ.). mathjax.org. Дата обращения: 9 августа 2022. Архивировано 2 февраля 2021 года.
- ↑ MathJax v3.2.2 (англ.). MathJax (8 июня 2022). Дата обращения: 27 февраля 2023. Архивировано 28 октября 2022 года.
- ↑ MathJax v4.0.0-alpha.1 (англ.). MathJax (2 октября 2022). Дата обращения: 28 февраля 2023. Архивировано 28 февраля 2023 года.
- ↑ MathJax: Rich Math display from LaTeX and MathML (англ.) (17 ноября 2015). Дата обращения: 9 августа 2022. Архивировано 9 августа 2013 года.
- ↑ MathJax AsciiMath support (англ.). Дата обращения: 7 апреля 2013. Архивировано из оригинала 23 марта 2018 года.
- ↑ Cuellar, Autumn; Topping, Paul (June 2013). Mathews, Bob (ed.). "What you need to know about the Maths Stack". XML London 2013 (англ.): 63—68. doi:10.14337/XMLLondon13.Cuellar01. ISBN 978-0-9926471-0-0. Архивировано из оригинала 13 июня 2019. Дата обращения: 9 августа 2022.
- ↑ arXiv.org help - What is MathJax? (англ.). Дата обращения: 9 августа 2022. Архивировано 8 августа 2022 года.
- ↑ Расширение:MathJax (англ.). mediawiki.org (15 ноября 2010). Дата обращения: 9 августа 2022. Архивировано 18 июня 2022 года.
- ↑ What's New in MathJax 3 (англ.). Дата обращения: 9 августа 2022. Архивировано 24 августа 2022 года.
- ↑ mathjax-node (англ.). Дата обращения: 9 августа 2022. Архивировано 17 мая 2020 года..
- ↑ 1 2 Cervone, Davide (2012), "Math Jax: A Platform for Mathematics on the Web" (PDF), Notices of the American Mathematical Society (англ.), 59 (2): 312—316, doi:10.1090/noti794, Архивировано (PDF) 8 августа 2022, Дата обращения: 9 августа 2022
- ↑ MathJax v2.0-beta now available on CDN (англ.) (11 февраля 2012). Дата обращения: 9 августа 2022. Архивировано 5 мая 2020 года.
- ↑ MathJax Font Help (англ.). Архивировано 28 июля 2012 года.
- ↑ MathJax: Browser Compatibility (англ.). Дата обращения: 5 июня 2017. Архивировано из оригинала 6 апреля 2015 года.
- ↑ Copy and Paste Math (англ.). Дата обращения: 9 августа 2022. Архивировано 24 октября 2019 года.
- ↑ MathJax MathML Support — MathJax 2.3 documentation (англ.). Дата обращения: 14 февраля 2014. Архивировано из оригинала 15 декабря 2018 года.
Ссылки
править- Официальный сайт
- Расширения MediaWiki: