OpenType

読み:オープンタイプ
外語:OpenType 英語
品詞:固有名詞

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

目次

TrueTypeの後継としてAdobe SystemsMicrosoftが共同で設計し、これにApple Computer(現Apple)が賛同することで開発された。

基本的なファイル形式はTrueTypeフォントと同様だが、PostScriptフォント(のうちのType 1)も扱うことができるようになった。

但し、TrueTypeとType 1は技術的に異なるものであり、利用するにはそれぞれのラスタライザーが必要になる。

対応環境

Microsoft WindowsOS Xで採用されている。

Linux等ではまだ対応がないため、TrueTypeへのコンバーターが存在する。

OSがOpenTypeに対応をすると、従来のTrueTypeのみならず、PostScript用のフォントも利用可能となる。また、PostScriptプリンターがOpenTypeに対応しTrueTypeフォントのラスタライザーを搭載すれば、従来のType 1のみならずTrueTypeも利用可能になる。

基本仕様

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

構造

全体構造

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

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

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

必須テーブル

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

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

TrueType用だったglyfとlocaが必須から外されている。

以降は任意のテーブルである。

TrueType用テーブル

  • cvt: Control Value Table
  • fpgm: Font program
  • glyf: Glyph data
  • loca: Index to location
  • prep: CVT Program

PostScript用テーブル

  • CFF: PostScript font program (compact font format)
  • VORG: Vertical Origin

ビットマップグリフ用テーブル

  • EBDT: Embedded bitmap data
  • EBLC: Embedded bitmap location data
  • EBSC: Embedded bitmap scaling data

Advanced Typographic Tables

  • BASE: Baseline data
  • GDEF: Glyph definition data
  • GPOS: Glyph positioning data
  • GSUB: Glyph substitution data
  • JSTF: Justification data

その他OpenTypeテーブル

  • DSIG: Digital signature
  • gasp: Grid-fitting/Scan-conversion
  • hdmx: Horizontal device metrics
  • kern: Kerning
  • LTSH: Linear threshold data
  • PCLT: PCL 5 data
  • VDMX: Vertical device metrics
  • 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
  • 3‐7: (予約)
  • 3‐8: (予約)
  • 3‐9: (予約)
  • 3‐10: Unicode UCS-4

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

そこで、OpenTypeではTrueTypeにはないID=10が新たに作られている。

仕様書によれば、ID=1の対応は必須でBMPの文字はこれで提供され、BMP外の文字はID=10が必要になる、としている。

異体字セレクター

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

プラットフォームID=0、エンコーディングID=5、フォーマット=14というテーブルに情報が格納される。これもTrueType 1.0 Revision 1.66には記載が無く、OpenTypeから追加された。

異体字セレクターが昇順でソートされてテーブル化され、それぞれに対してDefault UVS TableとNon-Default UVS Tableのオフセットが指定される。異体字セレクター対応のフォントを作る場合はDefault UVS Tableを使用してはならず、Non-Default UVS Tableを使用する。

Default UVS Tableは、Unicodeのベース文字とグリフIDのペアを並べただけのテーブルである。これが異体字セレクターごとに用意されることになる。

関連するリンク
OpenType specification
Unicode Variation Sequences in OpenType
関連する用語
TrueType
PostScript

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


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