CAS-UBでは数式を含むEPUB/PDFの作成を重要なテーマとして位置づけて開発に取り組んでいます。数式機能は当初の予定よりも正式リリースが遅れているため、多くのお客様にお待ちいただいています。そこで、ここでCAS-UBでの数式の取り扱いの現状と開発の予定について報告いたします。
1. 現状
1.1 入力方法
コンテンツの本文にインライン数式とディスプレイ数式を埋め込むことができます。CAS-UBでは本文をCAS記法で記述しますが、数式はAMS-LaTeX (以下、TeXと略記します)の記法で記述します。数式の範囲は$$~$$で囲むことで本文と数式を区別します。
1.2 出力方法
a. EPUB3
EPUB3のコンテンツ本文はXHTML5ですが、数式部分はMathMLの形式でXHTML5の中に埋め込みます。EPUB3を出力するときTeXの記法からMathMLに自動的に変換します。
b. PDF
数式をTeXの記法からMathMLに変換し、AH FormatterでMathMLをレンダリングしてPDF中に数式を埋め込みます。
c. Webページ
ブラウザはMathJaxを使って数式を表示できます。そこで、CAS-UBのWebページ(プレビュー)作成では、数式部分をTeXのまま出力、XHTMLにMathJax対応コードを埋め込みます。
1.3 ドキュメント・サンプル
上述の入力と出力の方法は、CAS-UBの公開マニュアルに記載されていませんが、現在、クラウド上では上の仕組みを使うことができます。
使用方法、記述例およびサポートするTeXの記法、および出力結果を次のところにサンプルとして公開いたしました。このサンプルは、開発途上のアルファ版の段階であることをご理解ください。
CAS-UBサンプルの「CAS-UBによる数式の扱い」をご覧ください。
2. 開発課題
現在、次の点を課題として開発を行なっています。一部は計画も含み、今後変更になる可能性がありますのでご了解ください。
2.1 AMA-LaTeX記法からMathMLへの変換
TeXで記述した数式をMathMLに変換するとき変換できない記述があります。変換可能な範囲を増やす開発を行ないます。
なお、別の方法として、CAS-UBで編集するコンテンツにMathMLを直接埋め込むことも検討しています。これによりTeXから変換できない数式、MathMLとして予め用意されている数式コンテンツをEPUBやPDFにインポートしたり、貼り付けたりできることになるでしょう。
2.2 MathMLのレンダリングの改善
PDF生成時に数式をより綺麗にレンダリングするため、AH Formatter V6のMathMLレンダリング機能の強化を行なっています。具体的には次のような項目です。
(1) 数式専用フォントへの対応
STIXフォントなどの数式専用のフリーフォントを使ったレンダリングも行なうようにします。数式専用フォントを利用することで、数学の記号類をより綺麗にレンダリングできるようになります。
(2) MathMLのレンダリングのチューニング
MathMLをより綺麗に表示するためのレンダリングのプログラムの見直しと改善を行なっています。
2.3 その他
数式番号の付与方法、番号の自動付与、本文から数式を参照するための仕組みを開発します。
2.4 数式リーダ
MathML数式を含むEPUBを表示できるリーダは、現時点ではFireFoxのプラグインのみです。新たなリーダがでてきたら随時評価を行ないます。
3. 日程
上記の開発課題への対応は今年10~12月に完了する予定です。
4. EPUBリーダ
4.1 MathMLを表示できるEPUBリーダ
2.4項の通り、CAS-UBで作成したEPUB3では数式はMathMLで表現されています。EPUB3の仕様上は問題ないのですが、実際には、これを正しく表示できるEPUBリーダはFireFoxのプラグインのEPUBリーダのみです。iBooks, Adobe Digital EditionsなどのほかのEPUBリーダでは正しく表示できませんのでご注意ください。
4.1 その他の選択肢
EPUB3リーダでMathMLのサポートが見込めない状況であれば、数式をSVGにして埋め込むことにするかもしれません(未定)。