diff --git a/unpacked/jax/output/CommonHTML/autoload/mglyph.js b/unpacked/jax/output/CommonHTML/autoload/mglyph.js index 538616b30..f273ccb59 100644 --- a/unpacked/jax/output/CommonHTML/autoload/mglyph.js +++ b/unpacked/jax/output/CommonHTML/autoload/mglyph.js @@ -60,15 +60,15 @@ MathJax.Hub.Register.StartupHook("CommonHTML Jax Ready",function () { var img = CHTML.addElement(node,"img",{ isMathJax:true, src:values.src, alt:values.alt, title:values.alt }); - var w = bbox.img.img.width/CHTML.em, h = bbox.img.img.height/CHTML.em; - if (values.width !== "") img.style.width = CHTML.Em(this.CHTMLlength2em(values.width,w)); - if (values.height !== "") img.style.height = CHTML.Em(this.CHTMLlength2em(values.height,h)); - // - // Warning: causes page reflows - // - bbox.w = bbox.r = img.offsetWidth/CHTML.em; bbox.h = bbox.t = img.offsetHeight/CHTML.em; + var w = values.width, h = values.height; + var W = bbox.img.img.width/CHTML.em, H = bbox.img.img.height/CHTML.em; + var WW = W, HH = H; + if (w !== "") {W = this.CHTMLlength2em(w,WW); H = (WW ? W/WW * HH : 0)} + if (h !== "") {H = this.CHTMLlength2em(h,HH); if (w === "") W = (HH ? H/HH * WW : 0)} + img.style.width = CHTML.Em(W); bbox.w = bbox.r = W; + img.style.height = CHTML.Em(H); bbox.h = bbox.t = H; if (values.valign) { - bbox.d = bbox.b = -this.CHTMLlength2em(values.valign,h); + bbox.d = bbox.b = -this.CHTMLlength2em(values.valign,HH); img.style.verticalAlign = CHTML.Em(-bbox.d); bbox.h -= bbox.d; bbox.t = bbox.h; }