Unicode 5.2以降のCMap

  • 前回、LionのヒラギノProNは最新のCMapであるUniJISX02132004-UTF32の1.009を採用している、と書いた。今回は「UniJISX02132004-UTF32の1.009って何だよ」という問いに答えておこうと思う*1
  • 2007年までのCMapのバージョン間の違いは「CMapのバージョンの違い」にまとめてあるので、その後の変更分について。比較的新しいCMapには4つの系統があり、対応するバージョン間で、バージョン番号が一致しない。そこで、公開された時期によって、仮に「2010-April版」などと呼ぶこととする。今回のまとめに含まれる範囲では、変更点はすべて、マッピングの追加である。
  • 2010-April版は、Unicode 5.2に対応したもの*2


  • 2010-June版は、Unicode 6.0のうちCJK統合漢字拡張Dについて、先行して対応したもの。


  • 2010-October版では、漢字以外も含めてUnicode 6.0に対応した。


  • 現時点で最新のバージョンが、2010-November。CID+20152は、これまではU+6AFBと対応付けられていたが、U+237F1のほうがより適切であることが発見されたというケース。互換性維持のため、U+6AFBとの対応は削除せずにU+237F1との対応が追加され、2対1マッピングとなった。詳しくは「PRI 183についてのメモ」をコメント欄も含めて参照。

*1:CMapとcmapの違いについて。一応、抽象的な概念としてのテーブルあるいはテキストファイルとしてのテーブルはCMap、OpenTypeフォントに内蔵されているテーブルはcmapと表記しているつもりだが、まあ、どっちでも同じ。

*2:実際にはこの直前に短命な2つのバージョン(UniJIS-UTF32なら1.010と1.011)があるのだが、その詳細は把握していない。おそらくUnicode 5.2対応を図ったが漏れのあったバージョンであり、実装例はないと思う。