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フォントが普及している。

基本仕様

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

  • グリフはB-スプライン曲線で記述
  • 1ファイルに収録可能なグリフ数は、65,535グリフ
  • 1ファイルの最大サイズは4Gバイト

構造

TrueTypeフォントファイルは、テーブルディレクトリから始まる。

12オクテットのオフセットテーブルがあり、次いでオフセットテーブルに書かれた数のぶんだけテーブルディレクトリエントリーがある。

テーブルディレクトリエントリーは、各4オクテット構造で、タグ、チェックサム、オフセット、長さ、と続く。タグがテーブルの種類を表わす。ディレクトリエントリーは、タグの昇順でソートして格納されなければならない。

様々なテーブルがあるが、次が必須とされる。

  • cmap: character to glyph mapping
  • glyf: glyph data
  • head: font header
  • hhea: horizontal header
  • hmtx: horizontal metrics
  • loca: index to location
  • maxp: maximum profile
  • name: naming table
  • post: PostScript information
  • OS/2: OS/2 and Windows specific metrics

TrueType 1.0 Revision 1.66時点で、次のオプションテーブルが定義されている。

  • cvt: Control Value Table
  • EBDT: Embedded bitmap data
  • EBLC: Embedded bitmap location data
  • EBSC: Embedded bitmap scaling data
  • fpgm: font program
  • gasp: grid-fitting and scan conversion procedure (grayscale)
  • hdmx: horizontal device metrics
  • kern: kerning
  • LTSH: Linear threshold table
  • prep: CVT Program
  • PCLT: PCL5
  • VDMX: Vertical Device Metrics table
  • vhea: Vertical Metrics header
  • vmtx: Vertical Metrics

cmap

基本的な種類

フォントファイル内に格納される字形はグリフといい、16ビットの一意の番号(グリフインデックス)で管理される。

実際に実用的に使うためには、グリフインデックスと一般の文字コードとの変換表が必要になるが、これがcmapである。複数の変換表を格納できるように、プラットフォームID、プラットフォーム特有符号化IDの二種類のIDで種類分け可能になっている。Microsoft Windowsの場合、次のようなものがある。最初の数字がプラットフォームID、プラットフォーム特有符号化IDである。

  • 3‐0: Symbol
  • 3‐1: Unicode BMP (UCS-2)
  • 3‐2: ShiftJIS
  • 3‐3: Big5
  • 3‐4: PRC
  • 3‐5: Wansung
  • 3‐6: Johab

TrueTypeが出来た当時のUnicodeと現在のUnicodeには大きな違いが生じており、Unicodeも16ビットでは収まらなくなった。ID=1は16ビットが前提に作られたテーブルであるので対応できない。

BMP外の文字はID=10となるが、これはTrueTypeの仕様にはなく、後継OpenTypeでの拡張となっている。

異体字セレクター

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

但しこれもTrueTypeの仕様にはなく、後継OpenTypeでの拡張となっている。

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club