ELS: Hirodai e-Learning Support

数式を表示するCGI

mathTeX

数式を表示するCGIプログラムを mimeTeX から mathTeX へ変更しました。mimeTeX は LaTeX 互換でしたが、mathTeX で「本物の LaTeX」になりました。(背後で LaTeX の処理系が動いています)

使い方は以前と同様で、HTMLの中で <img src="http://webct.riise.hiroshima-u.ac.jp/cgi-bin/mt.cgi?数式コマンド">とします。例えば、

<img src="http://webct.riise.hiroshima-u.ac.jp/cgi-bin/mt.cgi?y=\frac{1}{2}f(x,\theta)">

と書くと、

となります。

Javascriptで記述を簡潔に

また、上記のように書くと src= の部分がとても長くなってしまいますので、mathTeXのホームページにある Javascript を使って <img alt="math:数式コマンド">という形式で短く記述できるようにしました。この形式を使うためには、以下の例のように Javascript のファイルを読み込ませる一文を冒頭に書いておく必要があります。

<script type="text/javascript" src="http://webct.riise.hiroshima-u.ac.jp/tools/math.js"></script>

<p>平均μ、分散σ<sup>2</sup>の正規分布の確率密度関数は以下のようになります。</p>
<p align="center">
<img alt="math:f(x)=\frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(x-\mu)^2}{2\sigma^2}}">
</p>

平均μ、分散σ2の正規分布の確率密度関数は以下のようになります。

math:f(x)=\frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(x-\mu)^2}{2\sigma^2}}

式が何度も出てくるようなページで使っていただくと、HTMLソースがかなり見やすくなると思います。

【注】上記の SCRIPT タグは1ページに1回読み込ませればよいです。例えば、小テストの択一式問題で、選択肢として数式を表示させたい場合は、以下の図(クリックで拡大します)のように問題文の所に1回だけ書いておけばOKです。

WebCTの「数式を挿入」と、どう違う?

WebCT には数式入力のための Java アプレットが用意されており、これで作成した数式を (MathMLで保存し)イメージとして表示する機能があります。これに較べて、mathTeX を使うメリットとしては以下のようなものが挙げられます。

  • 仕上がりが美しい。一目瞭然です。
  • 慣れれば入力が圧倒的に早い。GUIではないので、数式コマンドを憶えないと何も書けないというのはデメリットでもあります。
  • HTMLを使えるすべての場所で使える。小テスト選択問題の回答候補など、HTMLが使えるのに数式エディタが使えない場所はいくつかあります。そういう場所でもmathTeXならOKです。
  • WebCTの外でも使える HTML になる。mathTeXのCGIはWebCT CE6の外部に置いてあり、どこからでもアクセスできます。上記の方法で記述したHTMLでは、どのWebサーバに置いても(PC上に置いていても)きちんと数式表示されます。

注意事項

エラー処理

致命的なエラーの場合は処理できない旨表示されますが、軽微なエラーの場合はその部分を無視して式が表示されます。例えば \alpha と書くところを \alph とミスタイプしていた場合、エラーメッセージは何もなく、その文字だけ飛ばして式が生成されます。マクロを使用している latex ファイルから式をコピー&ペーストで持ってきた場合など、特にご注意下さい。

mimetexとの互換性

今回 mathtex を、以前利用していた mimetex と同じ名前 (mt.cgi) でインストールしました。mimetex は mimetex.cgi という名称で残していますので、もし以前作成した式がうまく表示できなくなっている場合はこちらをご利用下さい。

使えるコマンド

mathtexは、通常の LaTeX に amsmath や amssymb などを読み込んだ状態で処理をします。ですので、pmatrix や align などの amslatex の数式コマンドも利用可能です。latex, amslatex の数式コマンドについては、以下が参考になります。

LaTeXについては、他にも多くの情報が WWW 上にありますし、書籍も多数出版されています。

また、以下のテキスト入力エリアに数式コマンドを入れて "Submit Expression" をクリックすると mathtex で処理された結果をすぐに確認できますので、ご利用下さい。

数式コマンドを入力し、"Submit Expression"をクリックしてください。