From 850f736aa7f8cd08ce2b01b1b47dafa00edc15c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Wang?= Date: Fri, 30 Aug 2013 11:27:12 +0200 Subject: [PATCH] Add preview=mathml,altimg to the mml2jax preprocessor. #557 --- unpacked/extensions/mml2jax.js | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/unpacked/extensions/mml2jax.js b/unpacked/extensions/mml2jax.js index b946f7332..097f550f2 100644 --- a/unpacked/extensions/mml2jax.js +++ b/unpacked/extensions/mml2jax.js @@ -181,13 +181,24 @@ MathJax.Extension.mml2jax = { createPreview: function (math,script) { var preview = this.config.preview; if (preview === "none") return; - if (preview === "alttext") { - var text = math.getAttribute("alttext"); - if (text != null) {preview = [this.filterPreview(text)]} else {preview = null} - } + if (preview === "mathml") {preview = math} + else if (preview === "alttext" || preview === "altimg") { + var alttext = this.filterPreview(math.getAttribute("alttext")); + if (preview === "alttext") { + if (alttext != null) {preview = MathJax.HTML.TextNode(alttext)} else {preview = null} + } else { + var src = math.getAttribute("altimg"); + if (src != null) { + // FIXME: use altimg-valign when display="inline"? + var style = {width: math.getAttribute("altimg-width"), height: math.getAttribute("altimg-height")}; + preview = MathJax.HTML.Element("img",{src:src,alt:alttext,style:style}); + } else {preview = null} + } + } if (preview) { - preview = MathJax.HTML.Element("span",{className:MathJax.Hub.config.preRemoveClass},preview); - script.parentNode.insertBefore(preview,script); + var span = MathJax.HTML.Element("span",{className:MathJax.Hub.config.preRemoveClass}); + span.appendChild(preview); + script.parentNode.insertBefore(span,script); } },