Attention
Version 3 is now the current version of MathJax. This document is for version 2.
The MMLorHTML configuration options (Deprecated)
Warning
This extension has been deprecated in MathJax v2.6. See automatic selection of output processors for alternatives.
The options below control the operation of the MMLorHTML configuration
file that is run when you include "MMLorHTML.js"
in the config
array of your configuration, or when you use one of the combined
configuration files that ends with _HTMLorMML
. They are listed
with their default values. To set any of these options, include a
MMLorHTML
section in your MathJax.Hub.Config()
call. For
example
MathJax.Hub.Config({
MMLorHTML: {
prefer: {
Opera: "MML"
}
}
});
would set the prefer
option so that the Opera browser would prefer
MathML to HTML-CSS output (while leaving the settings for other
browsers unchanged).
Note that if you use the MMLorHTML.js
configuration file, you should
not specify an output processor in the jax array of your
configuration; MMLorHTML will fill that in for you.
- prefer: {
- MSIE: "MML",
- Firefox: "HTML",
- Safari: "HTML",
- Chrome: "HTML",
- Opera: "HTML",
- other: "HTML"
- }
This lets you set the preferred renderer on a browser-by-browser basis. You set the browser to either
"MML"
or"HTML"
depending on whether you want to use the NativeMML or HTML-CSS output processor. Note that although Opera and Safari do process some MathML natively, their support is not sufficient to handle the more complicated output generated by MathJax, so their settings are"HTML"
by default. Although Firefox does support a large subset of MathJax, it does not implement all the features needed by MathJax, and so it is also set to"HTML"
by default (this is new in v2.0).Note that users can still use the MathJax contextual menu to select a different renderer after the default one has been chosen by
MMLorHTML.js
.
MathJax produces MathML that models the underlying mathematics as best it can, rather than using complicated hacks to improve output for a particular MathML implementation. When you make the choice to use the NativeMML output processor, you are making a trade-off: gaining speed at the expense of quality and reliability, a decision that should not be taken lightly.