Отдельной проблемой при создании ресурсов Всемирной паутины естественнонаучной направленности является ввод математических формул.

В частности, несмотря на все преимущества, формулы в коде MathML оказываются значительно более громоздкими, чем аналогичные в коде издательских систем на основе TeX. С другой стороны, использование визуальных сред для создания формул MathML также не всегда удобно.

Эта проблема может быть решена использованием программ, преобразующих TeX-подобный код формул в код MathML, одной из которых и является MathJax.

Особенностью данной программы является исполнение на стороне пользователя (за счет использования языка программирования JavaScript), после формирования документа ПО сервера, что обеспечивает простоту включения MathJax в существующие ресурсы, равно как и возможность адаптации вывода под конкретного пользователя.

Очевидным недостатком MathJax является невозможность выполнения дополнительных преобразований результирующих документов XML на стороне сервера.

Простейший пример

\begin{equation*} e ^{\pi i} = -1. \end{equation*}

Для получения формулы выше на данной странице Ikiwiki использовался следующий код:

<p>\begin{equation*}
e ^{\pi i} = -1.
\end{equation*}</p>

Эту же формулу можно включить и в документ XHTML, подобно:

<?xml version="1.0" encoding="utf-8" ?>
<!-- example.xhtml &mdash; a simplistic XHTML + MathJax example -->
<!-- This document roughly follows the example suggested by Guenter
     Milde in [1].

     [1] news:jqa8ui$9s9$1@online.de
         http://groups.google.com/group/comp.text.tex/msg/b231bd1cbf9fc09d
     -->
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html
    xmlns="http://www.w3.org/1999/xhtml"
    xml:lang="en" lang="en">
  <head>
    <meta http-equiv="Content-Type"
          content="application/xhtml+xml; charset=utf-8" />
    <title>A MathJax XHTML Example</title>
    <script type="text/javascript"
            src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" />
  </head>
  <body>
    <p>
    \begin{equation*}
    e ^{\pi i} = -1.
    \end{equation*}
    </p>

    <div class="validation-links">
      <a href="http://jigsaw.w3.org/css-validator/">
        <img style="border:0;width:88px;height:31px"
             src="http://jigsaw.w3.org/css-validator/images/vcss"
             alt="Valid CSS!" />
      </a>
      <a href="http://validator.w3.org/check?uri=referer">
        <img src="http://www.w3.org/Icons/valid-html40"
             alt="Valid XHTML 1.0 Strict" height="31" width="88" />
      </a>
    </div>
  </body>
</html>
<!-- example.xhtml ends here -->
Posted 2012-06-29 03:38:43 +0000

Local variables:
coding: utf-8
fill-column: 64
ispell-local-dictionary: "russian"
End: