Design Science: How Science Communicates
日本語版ホーム ソリューション ご購入(料金・ご注文) サポート リファレンス ダウンロード サイトライセンス Design Science
リファレンス » MathType SDK

MathType ソフトウェア開発キット(SDK)

概要

MathType SDK は主にMathType の高度な機能を探索したいと考える開発者向けに用意されたものです。SDK には数式の形式とその他の関連情報に関するドキュメントが含まれています。MathType SDK は次のような希望を持った開発者がお使いになれます:

  • MathType がMicrosoft Word にインストールする特別なコマンドをカスタマイズしたい

  • MathType のDLL インターフェイスの技術マニュアルがほしい

  • MathType のトランスレータに手を加えたり、独自のトランスレータを作成したい

  • MathType のフォントとキャラクタの知識を拡張したい

  • 周囲のテキストのベースラインにインポートされた数式の位置調整を行うことで、製品を「数式にフレンドリーに」したい

Windows とMacintosh の両方のバージョンのSDK が用意されています。主な違いは、SDK のWindows バージョンが、MathType 6.7 用に更新されているものの、現在使用可能なMacバージョンはMathType 5 の機能のままであることです。
SDK は動作保証のない「現状渡し」を条件に、無償で提供されている英語バージョンのみのソフトウェアであり、これに関するテクニカル・サポートや他言語翻訳も行っていません。


ドキュメンテーション

SDK には以下の技術解説書が付属しています(すべて英文):


Templates

SDK には以下のWord 用テンプレートが付属しています:

  • Samples
    • SDKTest.dot
    • MTVarSub.dot
  • templates/Mac
    • MathType Commands.dot
    • MT6SDK.dot
    • Wordcmds.dot
  • templates/Win/32
    • MathType Commands 6 For Word.dot
    • MathType Commands 6 For Word.dotm
    • MathType Commands 6 For Word 2010.dotm
    • MT6SDK.dot
    • Wordcmds.dot
  • templates/Win/64
    • MathType Commands 6 For Word 2010.dotm
    • MT6SDK.dot
    • Wordcmd.dot


Sample Applications

  • MTGetEquationAddIn
  • MTSDKDN
  • OLECont
  • ConvertEquations (Windows バージョンのみ)

MathType API Documentation

MathType のAPI を使用すると、Word 用MathType コマンドで使用される関数を呼び出すことができます。このAPI はWindows では、MathPage.WLL とMT6.DLL の間で分割されます。


MathPage Documentation

MathPage 用の追加の機能と設定が以下の書類に記述されています:

  • MathPage Batch Processing
  • MathPage MathML Targets
  • MathPage Registry Settings

MathType Translator Programmers Manual

このマニュアルでは、バージョン4.0 以降のMathType 用の新しいトランスレータを修正または作成する方法について解説しています。トランスレータを指定するために使用されるトランスレータ定義言語(TDL)の説明と、どのようにMathType に利用可能な新規または修正されたトランスレータを作成するかの説明からなります。


Extending MathType's Font and Character Information

MathType 6 は以前のバージョンで使用されてきたフォントやキャラクタの知識を豊富に備えています。改良されたフォーマット、TeXやEPSへの変換、その他の多くの領域での改善による集大成です。この付加的な知識のほとんどは、コードに組み込まれた表形式になっています。しかし、アプリケーション自体を変更せずに、拡大および修正できるように、プログラムの外部にある場合があります。また、手慣れたユーザはMathTypeをカスタマイズでき、他のユーザにその結果が利用できるようにすることができます。この文書では、フォントとそれに含まれるキャラクタをMathType に認識させる方法を説明します。


MathType's Character Encodings

MathType のフォントおよびキャラクタは、キャラクタ・エンコーディング(キャラクタ・セットとも呼ばれる)の概念に基づいて作られています。エンコーディングとは、整数の集合からキャラクタまでの単なるマッピングのことです。例えば、ASCII はそれぞれ0〜255 の整数を割り当てられた約200 個のキャラクタからなるエンコーディングです。ユニコードは、世界のすべての言語をカバーするため、それぞれ0〜65,535 の数値を割り当てられた数千のキャラクタからなる別のエンコーディングです。
MathType はその内部でMTCode エンコーディングを使用してキャラクタを表示します。MTCode は、ユニコードに正規に含まれない数学的なキャラクタを表現するために、ユニコードのPrivate Use Area を使用するユニコード・エンコーディングのスーパーセットです。MathType は、それが使用する数学フォントにもエンコーディングを割り当てます。MathType はフォントのエンコーディングを使用して、フォント内のすべてのキャラクタのID を認識します。例えばキャラクタの間隔を計算したり、TeXとMathML に変換するといった数多くの用途で、この情報を使用しています。
MathType のエンコーディング表を表示するには、配布元のWeb サイト(GIF ファイルの数が多いために、SDK に含まれていません)で以下のページを参照してください。


MathType's Equation Format (MTEF)

MTEF は、MathType のバイナリ数式の形式です。MTEF は、MathType が数式を保存できるファイル形式すべてと同様に、MathType で生成されたOLE数式オブジェクトに埋め込まれています。

  • How MTEF is Stored in Files and Objects
  • MathType MTEF v.3 (Equation Editor 3.x)
  • MathType MTEF v.4 (MathType 3.5)
  • MathType MTEF v.5 (MathType 4.0)

MathType 6 は、WMF にデータを埋め込むための「アプリケーション固有のメタファイル・コメント規約」と呼ばれる新しい規約を導入し、MathType 6 では、MTEF とMathML の両方を埋め込むことに関して使用されています。
MTEF は、数式を定義するのに最も適した手段とまでは言えませんが、この情報へ大変多くのリクエストがあり、とにかく公開することにしました。それが理解しやすいフォーマットではないということだけではなく、もっと重要なことして、MathType がその処理すべてに寛大ではないということを念頭に置く必要があります。これはMathType のMTEF を送信する際に生じたエラーにより、クラッシュを引き起こすこともあるということを意味します。まれに、数式にフォーマット上の問題が生じることもあります。それはバイナリ形式です。これは数式を表示するのにキャラクタ列を使用することができず、Visual Basic などのプログラミング言語とは少し取っ付きの悪いMTEF を作成することになるのを意味します。


Accessing MathML in Output Files and on the Clipboard

MathMLは数学的表記のための標準のXML エンコーディングです。MathType 6 は、現在、数式の画像ファイル(GIF、EPS、WMF)にMathMLのマークアップを埋め込みます。また、MathType は数式オブジェクトをWindows のクリップボードに切り取りまたはコピーすることで、クリップボード上のMathML のデータを利用できます。


Extracting Baseline Info from Equation Objects and Files

MathType と数式エディタの数式オブジェクトやファイルには、ワープロ、ページレイアウト、さらに他のプログラムが自動的に周囲のテキストとインライン数式オブジェクトのベースラインを揃えるのに使用できる情報が含まれています。以下はこのデータを抽出するために必要な情報を提供する資料です:

  • Extracting Baseline Info from Macintosh PICT Data
  • Extracting Baseline Info from EPS Files
  • Extracting Baseline Info from WMF Data
  • Extracting Baseline Info from GIF Image Files

EGO (Edit Graphic Object) Specification

EGO (Edit Graphic Object)はMacintosh のプロトコルで、アプリケーションの書類に埋め込まれた画像オブジェクト(例えば、数式)の編集の実装にAppleEvent を採用しています。これはMicrosoft のOLE の機能を埋め込むオブジェクトに似ていますが、EGO は実装に関してMicrosoft のものよりもはるかにシンプルで、Macintosh のアプリケーション間でより広範囲にサポートされています。このEGO の仕様書は、Macintosh のプログラマが扱うアプリケーションにEGO のサポートを追加するのに必要な情報を提供するものです。ここにはMathType と数式エディタにおけるEGO のサポートに関する詳細も含まれています。


ライセンス(使用許諾契約)

MathType SDK License Agreement (MathType SDK ライセンス契約)は、ユーザーのコンピュータ上でのSDK の使用の一切に適用されます。これはSDK のインストール時に提示され、インストールを続行するには、これに同意する必要があります。
MathType SDK Derivative Works Distribution License Agreement は、SDK を使用して作成するソフトウェアに関する権利および制限を説明するものです。


MathType SDK(Software Development Kit)のダウンロード

SDK をダウンロードする前に、このDesign Science 社のWeb サイトに用意されたフォームに記入する必要があります。なお、この入力作業において、利用者の個人情報は保護されており、Design Science 社のみがこれを管理します。注意:決して日本語ないしは全角のアルファベットや数字の入力はしない様にしてください。
情報を入力後、該当するプラットフォーム別のダウンロードボタンをクリックします。これによりSDK のダウンロードが開始されます。ファイルサイズは約2 MB です。SDK をダウンロードしたフォルダをメモしてください。SDK をインストールするには、使用したブラウザから直接ファイルを開くオプションが提供されている場合はそれを、そうでない場合は、ダウンロードフォルダを開いて、ダウンロードしたファイルを実行します。

-冒頭に戻る-
Copyright (C) 1996- Design Science. All rights reserved.