TrueType
読み:トゥルータイプ
外語:TrueType

 アウトラインフォント(スケーラブルフォント)技術の一つ。
目次

概要
 Apple Computerが設計しMicrosoftと共同で開発した。Adobe SystemsPostScriptに対抗する意図があった。
 Mac OSのSystem 7(漢字TALK 7)と、Windows 3.1から採用された。
 後継はOpenTypeで、PostScriptとTrueTypeを統一のファイル形式で扱えるようにした。

特徴

対応環境
 元々はMac OSMicrosoft Windowsで使われるために開発されたが、広く普及したために多くのフォントが開発され、その資源は非常に大きなものとなった。
 そこで前記の二環境以外の環境、例えばUNIXX Window Systemでも利用できるよう、VFlibX-TTといったソフトウェアが開発されている。
 また国産OSとして有名なBTRON超漢字」もTrueTypeに対応している。

曲線
 TrueTypeフォントは、ベジェ曲線で記述されているPostScriptフォントと違い、スプライン曲線で記述されている。そのためファイルあたりのサイズが2割ほど大きい。
 また、Mac OSのQuickDrawはTrueTypeフォントを600dpiまでしかラスタライズできず、さらにPostScript変換にかかる演算が膨大なため、クリエイターや印刷会社からは嫌われている。
 しかしMac OSがPostScriptフォントのレンダリングに対応せず、Microsoft WindowsやX Window Systemでも対応していない実状から、TrueTypeフォントが普及している。

仕様

基本仕様
 主な仕様は次の通りである。

構造
 TrueTypeフォントファイルは、テーブルディレクトリから始まる。
 12オクテットのオフセットテーブルがあり、次いでオフセットテーブルに書かれた数のぶんだけテーブルディレクトリエントリーがある。
 テーブルディレクトリエントリーは、各4オクテット構造で、タグ、チェックサム、オフセット、長さ、と続く。タグがテーブルの種類を表わす。ディレクトリエントリーは、タグの昇順でソートして格納されなければならない。
 様々なテーブルがあるが、次が必須とされる。
 TrueType 1.0 Revision 1.66時点で、次のオプションテーブルが定義されている。

cmap

基本的な種類
 フォントファイル内に格納される字形はグリフといい、16ビットの一意の番号(グリフインデックス)で管理される。
 実際に実用的に使うためには、グリフインデックスと一般の文字コードとの変換表が必要になるが、これがcmapである。複数の変換表を格納できるように、プラットフォームID、プラットフォーム特有符号化IDの二種類のIDで種類分け可能になっている。Microsoft Windowsの場合、次のようなものがある。最初の数字がプラットフォームID、プラットフォーム特有符号化IDである。
 TrueTypeが出来た当時のUnicodeと現在のUnicodeには大きな違いが生じており、Unicodeも16ビットでは収まらなくなった。ID=1は16ビットが前提に作られたテーブルであるので対応できない。
 BMP外の文字はID=10となるが、これはTrueTypeの仕様にはなく、後継OpenTypeでの拡張となっている。

異体字セレクター
 Unicodeには更なる問題として、異体字セレクターというものが登場した。これに関する情報も、新たなcmapのテーブルに情報を加えることで対応することになった。
 但しこれもTrueTypeの仕様にはなく、後継OpenTypeでの拡張となっている。

再検索