TeX表記法フィルタは、TeX式をGIF、PNGまたはSVG画像に変換するためのMoodleのコアフィルタです。このフィルタは、適切なトークンで囲まれた式を変換するために、いくつかの追加のバイナリを利用します。これらのバイナリを利用できない場合に備えて、MoodleはMimetexを使用するフォールバックを用意しています。Linux(glib2.3 32bit)、Windows、Mac OS XおよびFreeBSD用のMimeTexがMoodleの配布物に含まれています。TeXを表示するための技術はほかにもあります(議論については数学ツールのセクションを参照してください)。
注:バイナリに基づいているため、3つのPHPプログラム実行関数 exec、shell_exec および system が利用可能である必要があります。
方法と使い方
混乱を避けるために注意してほしいのは、TeX表記法フィルタにはTeX表記を画像に変換する方法が2つあるということです。推奨される方法は、3つのバイナリの組み合わせを使用するもので、これらのバイナリはサーバへのインストール(まだ存在しない場合。ただし、多くのウェブホストはこれらを利用できるようにしています)と設定を自分で行う必要があります。フィルタ設定ページは、すべてこの方法に関するものです。何らかの理由でこの方法が失敗した場合、フィルタは単一のバイナリであるMimeTeXにフォールバックします。一般的なオペレーティングシステム用の複数のビルドがMoodleの配布物に含まれていますが、システム管理の経験があれば、Mimetexとその兄貴分であるMathTexのコンパイルとインストールは十分簡単です。
何よりもまず、設定 > サイト管理 > プラグイン > フィルタに移動して、TeX表記法フィルタを有効にする必要があります。代数表記法フィルタ(もう1つのコアフィルタ)を使用したい場合は、代数表記法フィルタは実際にはTeX表記法フィルタの「フロントエンド」にすぎないため、代数表記法フィルタも有効にする必要があります。代数表記法フィルタの詳細については、代数表記法フィルタを参照してください。
フィルタを有効にして適切に設定すると、 2つのドル記号で区切ったTeX式を記述して、フィルタを利用できます。例:
$$ \sqrt{x + y} $$
これが正しく表示されない場合は、デバッグに関する情報を参照してください。
MimeTeX
Moodleは、dvips、convertおよびlatexの各バイナリに正しくアクセスできない場合のフォールバックとして、ビルド済みのMimeTeXバイナリ(filters/texディレクトリにあります)を使用することがあります。オペレーティングシステムごとに複数のバージョンがあります。TeX表記法フィルタは、検出したホストのオペレーティングシステムに適したバイナリを選択します(オペレーティングシステムが含まれていない場合は、スクリプトを改造する必要があります)。その場所にあるバイナリを実行するための適切なパーミッションがウェブサーバに設定されている必要があることに注意してください。
MimeTeXマニュアルを利用できますが、これはおそらくシステム管理の経験がある人を対象としたもので、Moodle環境については特に扱っていません。
MimeTeXは、完全なLaTeXシステムのインストールに失敗した場合、またはシステムでバイナリを利用できない場合にのみ使用してください。結果の品質は、はるかに劣ります。
MathJaxとの互換性
Moodle 2.8以降では、TeX表記法フィルタとMathJaxloaderフィルタを組み合わせて使用できます。ページで両方のフィルタが有効になっている場合、最初にTeX表記法フィルタによって画像が表示され、少し後でMathJaxの読み込みと処理が完了すると、TeX式のMathJax版に置き換わります。両方のフィルタを利用できる場合、教師は一方を有効にし、もう一方を無効にすることで、活動でどちらを使用するかを決めることができます。
サイト管理設定
場所:設定 > サイト管理 > プラグイン > フィルタ > フィルタ設定の「TeX表記法」の設定リンク
TeX表記法フィルタの設定ページは、主にLaTeXレンダラの動作を調整するためのものです。3つのパス設定のデフォルトは、Moodleが動作しているオペレーティングシステムの検出結果に応じて選択されます。これらは一般的な値の候補にすぎず、Moodleはそれらの場所に実際にバイナリが存在するかどうかを確認しません。最近のバージョンのMoodleでは、パス設定の横に緑のチェックマークまたは赤い×印が表示されます。これは、その場所にバイナリが存在すること(だけ)を示します。これらの設定は、MimeTexバイナリ(これらのバイナリのいずれかが見つからない場合に使用されます)の動作には影響しません。
バイナリのインストール
これはプラットフォームによって異なりますが、一般的なインストールでは、LaTeXの実装が必要になります。最近のLinux実装では、「texlive」パッケージを探してください(例:apt-get install texlive)。Windows版も利用できます(Tex Liveを参照してください)。標準インストールにこれらのバイナリがすべて含まれていることは、まずありません。texliveが見つからない場合は、LaTeX、GhostscriptおよびImageMagickを個別にインストールする必要があるかもしれません。Moodle.orgが推奨しているわけではありませんが、Windows用の簡単なインストールバイナリとしてMikTeXがあります。
セキュリティ上の理由から、LaTeXの設定でシェルエスケープが無効になっていること(shell_escape = f)を確認してください(有効になっている場合、これは「t」に設定されています)。これは、ユーザが外部コマンドを実行できてしまうリスクを防ぐためです。通常、これはデフォルトで無効になっていることに注意してください。(これが「p」、つまり制限モードに設定されている場合、あらかじめ定義されたコマンドのセットが許可されます。これが望ましい動作である場合は、すべてのユーザがこれらのコマンドにアクセスできることを考慮して、どのコマンドを許可するかに細心の注意を払ってください。)
フィルタ設定ページは、検出したプラットフォームに応じて、バイナリファイルがある可能性が最も高い場所を推測しようとします。正しければ、各設定の横に緑のチェックマークが表示されます。赤い×印が表示された場合は、必要に応じて設定を確認し、変更する必要があります。指定したパスにバイナリが存在するかどうかについて、簡単な確認が行われます。その結果として、各設定の横にチェックマークまたは×印が表示されます。これは、アプリケーションが実際に動作するかどうかを確認するものではなく、そこに存在することを確認するだけである点に注意してください。
一部のシステムでは、フォントが別のパッケージとして提供されています。問題が発生している場合は、必要なフォントがすべてインストールされていることを確認してください。必要な数学フォントを入手するために、「extra」フォントパッケージを探す必要があるかもしれません。
LaTeXプリアンブル
LaTeXプリアンブルを指定できるようにします。ほとんどのユーザにはデフォルトで問題ありませんが、非ラテン文字セットなどをサポートするために変更が必要な場合があります。詳細については、LaTeXのドキュメントを参照してください。
透過色
通常のテキストの背景色に設定してください。デフォルト設定は#FFFFFF(つまり白)です。
密度
この設定は、生成される画像のサイズに影響します。デフォルト設定は120ピクセルで、妥当な品質の画像が生成されますが、複雑な数式によってはこれでも十分でない場合があります。これより小さい値では十分な品質の画像が生成されないかもしれませんが、画像のサイズは、ページのレンダリング時にTeXのエンコーディングによって制御できます。
latexバイナリのパス
標準のlatexバイナリへのパスです。
Unix系のシステムでは、通常「/usr/bin/latex」です。MacOS Xでは、パスは「/usr/texbin/」です。
Windowsで、MiKTeXを使用している場合、通常はC:\texmf\miktex\bin\latex.exeのようになります。
dvipsバイナリのパス
標準のdvipsバイナリへのパスです。dvipsは通常、LaTeXシステムの一部として配布されています。
Unix系のシステムでは、通常「/usr/bin/dvips」です。MacOS Xでは、パスは「/usr/texbin/」です。
WindowsでMikTeXを使用している場合、通常はC:\texmf\miktex\bin\dvips.exeのようになります。
convertバイナリのパス
標準のconvertバイナリへのパスです。latexおよびdvipsバイナリを使用してGIFまたはPNG画像を生成するために必要です。これは、Ghostscriptシステムの一部として、またはLinuxではImageMagickの一部として配布されています。
Unix系のシステムでは、通常「/usr/bin/convert」です。MacOS Xでは、パスは「/usr/local/bin/」です。
WindowsベースのPCでは、パスはC:\Program Files\ImageMagick\convert.exeのようになります(ImageMagickの場合。GhostScriptの場合は異なります)。
dvisvgmバイナリのパス
このバイナリは、SVG画像を生成するために、convertの代わりに使用されます。これはLinuxではTeXliveの一部として配布されていますが、完全版またはextraパッケージのインストールが必要な場合があります。
Unix系のシステムでは、通常「/usr/bin/dvisvgm」です。
WindowsベースのPCでは、コンパイル済みのバイナリをsourceforgeから入手でき、latexバイナリと同じディレクトリに配置できます。
mimetexバイナリのパス
これが空白で、上記のバイナリが存在しないか失敗した場合、TeX表記法フィルタはMoodleに同梱されているmimetexバイナリの使用を試みます。サーバにmimetexをインストールしていて、そちらを使用したい場合は、ここにパスを入力してください。
TeX表記法フィルタのデバッグ
TeX表記法フィルタには、問題が発生している場合に役立つデバッグスクリプトが含まれています(デバッグを有効にすると、はるかに役立ちます)。URLは次のようになります...
http://your.moodle.path/filter/tex/texdebug.php
このパスを直接入力するか、適切なロールのパーミッションがあれば、TeX画像(デバッグが必要な場合は、正しくレンダリングされなかったテキストである可能性が高いでしょう)からこのスクリプトにリンクされます。最近のバージョンのMoodleでは、この機能にアクセスするには管理者としてログインしている必要があります。
関連項目
- TeX Filter Glossary - サポートされているTeX表記法の使い方を詳しく説明した、コースに追加できる用語集です。
- LaTeX - LaTeX文書作成システムです。
- ghostscript - 画像のレンダリングに必要です。
- MimeTeXマニュアル - デフォルトのTeX表記法のマニュアルです。
- MikTeX - Windowsシステム用のLaTeXです。
- ImageMagick - Windowsで画像をレンダリングするために必要です。
- TeX表記法の使用
- Moodle 2.x用の高度な数学ツール - 次世代のTeXツールを参照してください
- moodle.orgの数学ツールフォーラム