« XHTML ⇒ HTML5 | トップページ | フカシギな動画 »

2012年8月25日 (土)

MathJax は v2.0 になっていた

MathJax のサイトを眺めていたら、バージョンは v2.0 になっているのに気が付きました。黒木さんのところの「MathJax の使い方」では v1.1 にリンクが張っているので、それが最新バージョンだと思っていました。

v2.0 での変更点は色々有るようですが、英語なのでよく解りません。とにかく次の2点は変わったようです。

  • SVG 表示が追加された
  • IE8 でも速くなった
そこで、オマジナイから
    <meta http-equiv="X-UA-Compatible" CONTENT="IE=EmulateIE7" />
の部分を削除しました。

実は MathJax を使っていて不満な点が有ります。タブレットでこのブログを見るとPC表示では数式が整形されません。また、最近、 Chrome では数式のルート記号が乱れています(IEでは問題なし)。ただ、このルート記号は SVG 表示にすると正常に表示されます。 Chrome の HTML-CSS 表示に問題が有るのでしょう。

そこで、 MathJax を SVG 表示にすればそれらが改善されるかもしれないと思って、オマジナイを変更してみました。そして、ブログ作成画面から[確認]ボタンを押して表示されたページを見ると、期待通りに数式が SVG で綺麗に整形されています。それで[保存]を押してから該当ページを見てみると、残念なことに数式は HTML-CSS 表示になってしまいます。たぶん、ココログが何か悪さをしているのでしょう。そんな訳で SVG 表示は失敗しました。なお、数式整形後に右クリックで SVG 表示に切り替えることは可能です。

ところで、今までは、オマジナイはその都度、記事の先頭にコピペしていたのですが、これをスクリプト呼び出しに変更しました。つまり、記事先頭には

    <script src="chomechome/reqmathjax.js" ></script>
だけを置くようにしました。 chomechome はスクリプトを置いている場所に読み替えて下さい。そして reqmathjax.js は次の通りです。

(function (){
    if (!window.MathJax){
        var mjConfig = document.createElement("script");
        mjConfig.type = "text/x-mathjax-config";
        mjConfig.innerHTML = "MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'],['\\\\(','\\\\)']] } })";

        var mathjax = document.createElement("script");
        mathjax.type = "text/javascript"
        mathjax.src = "http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML";

        var head = document.getElementsByTagName("head")[0];
        head.appendChild(mjConfig);
        head.appendChild(mathjax);
    }
})();
このスクリプトにはIEに関するオマジナイは有りません。また、 MathJax が既に実行済みかどうかの判断は window.MathJax で行うように変更しました。この window.MathJax は MathJax.js 中で使用されているものです。

« XHTML ⇒ HTML5 | トップページ | フカシギな動画 »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/584699/55502773

この記事へのトラックバック一覧です: MathJax は v2.0 になっていた:

« XHTML ⇒ HTML5 | トップページ | フカシギな動画 »