本記事は、アーカイブに保存されている過去の記事です。最新の情報は、公益社団法人日本印刷技術協会(JAGAT)サイトをご確認ください。
印刷物を製作する際の異体字は、外字やグラフィックとして対処することが可能だが、Webや電子書籍では検索やリンクを前提とするため、従来以上に異体字の扱いが重要になってくる。
UnicodeによるJIS X 0213への対応について、マイクロソフトイノベーションセンター本部長の田丸健三郎氏に話を伺った。
■文字コードの歴史とマイクロソフト
マイクロソフトの最初のOSはMS-DOSで、Shift JISに対応していた。文字集合としては、JIS78、83を基本として、各メーカーの拡張文字は収容可能とするだけであった。
第2世代であるWindows3.1では、JIS90に拡張文字を加えた文字集合を採用し、マイクロソフト標準キャラクタセットとした。
第4世代がWindows Vistaで、JIS 2004の文字集合に対応した。JIS 2004で追加された文字に対応するため、Unicodeのサロゲートペア、サロゲートエリアに割り当てられた文字をサポートしている。
■システムによって異なる表示
一般にデジタルデータで残せば何年たっても同じという漠然とした思い込みがあるが、書き手が意図して書いた文書と、そのデータを受け取った読み手が見ているときの文字が、同じという保証はない。
JIS2004では、同じデータ、コードであっても環境によって表示される字体が異なるという問題が存在している。データの永続性を考えた場合、字体という観点からは必ずしも永続性があるとは言えない。
■Unicodeと符号化方式
Unicodeの最初のバージョンは1992年で、サロゲートペアが標準の中に含まれたのは、その後の2.0である。バージョン4.0になって、異体字がサポートされた。現状の多くのアプリケーションやOSは、Unicodeバージョン2.0への対応にとどまっている。
Unicodeは1文字16ビットと思っている人が多いが、これはUTF-16の世界での話である。Unicodeの中では複数のプレーンが定義されており、UTF-16の16ビットで表現できる文字はBMP(ベーシックマルチリンガルプレーン)というエリアに定義されている。BMPに収まらない文字は、U+10000以降のアドレス空間に定義される。BMPエリアの中にサロゲートエリアが定義されていて、16ビットの上位サロゲート、下位サロゲートという16ビットの2つの組み合わせで1つの文字を表現するというロジックが追加されており、JIS2004の文字もこのエリアにマップされている。
■異体字セレクタ
Unicodeバージョン5では、IVD(Ideograph Variation Database)、IVS(Ideograph Variation Sequence)という仕組みが導入された。IVSとは、基底となる文字に対して、何番目のどの字体を使うのか指定する仕組みで、IVDは文字のバリエーションをデータベースとして管理している。IVSという仕組みを使って、IVDというデータベースの何番目の字体を使うかを指定する。
Unicodeバージョン5では、字体を含む情報をエンコードすることができる。Windows7ではIVSを正式にはサポートしていないが、先日リリースされたIPAフォントをWindows7にインストールすると、この仕組みを使用して、IVSを使った文字を例えばノートパッドでも表示することができる。
マイクロソフトは、IVSに対応することでデータの永続性の保証、読み手と書き手が同じ文字を見ることを保証しようという方向で動いている。