« 2006年01月03日 | メイン | 2006年01月05日 »

2006年01月04日

PDFと文字(15) – CJK統合漢字拡張

UnicodeV4仕様書の付録A Han Unification Historyに漢字統合の歴史について書いてありますが、一般統合漢字の作成は中国、日本、韓国の関係者を集めたCJK-JRGという研究グループが行って、UnicodeコンソーシアムとISO 10646に提出したものです。

その後、CJK-JRGはISO/IEC JTC1/SC2/WG2の下の作業グループとなり、名前もIdeographic Rapporteur Group (IRG)と変わりました。UnicodeV3以降で統合漢字が拡張されていますが、この拡張作業はIRGが行ったものです。

また1994年にベトナムの規格を追加しています。

次に、Unicode4の仕様書本文第11章East Asian Scriptsの統合漢字拡張と互換漢字についての説明を要約してみましょう。

統合漢字拡張Aと統合漢字拡張Bは、一般統合漢字と比べてまれにしか使わない文字で、一般統合漢字に統合できない文字を追加したものです。

統合化の規則のなかで原規格分離規則は1992年で廃止されましたので、統合漢字拡張Aと統合漢字拡張Bには適用されていません。それ以外の統合化規則は、一般統合漢字と同じとされています。

統合漢字拡張AはIRGが1993年から1998年にかけて各国の規格と古典から集めて、Unicode3.0でコードスペースBMPに6,582字を規定したものです。

一方、統合漢字拡張Bは、UnicodeV3.0に含まれなかった42,711文字を補助多言語第2面に規定したものです。G(中国)、H(香港)、T(台湾)、J(日本)、K(韓国)、V(ベトナム)の6つの原規格から漢字を集めて整理したもので、ちなみに、日本の原規格として、J3 JIS X 0213:2000の第3水準と同第4水準が入っています。

一般統合漢字、統合漢字拡張A、統合漢字拡張Bの3つのブロックは使用上の制約がありません。

これに対して、互換漢字は、12文字(下記③の文字)を除き、原規格とラウンドトリップする用途のみに使用できる、という制限が付いています。

ラウンドトリップとは、各国別規格に準拠する文字符号化テキストデータをUnicode文字符号化テキストデータに変換し、また、元の文字符号化テキストデータに戻したとき、全ての文字が元のコードに戻るということです。

CJK互換漢字(U+F900~U+FAFF)
361文字が規定されていますが、4種類に分かれます。
①韓国のKS C 5601-1987仕様は一般統合漢字の原規格として使われましたが、その中の268文字は同じ漢字の異なる発音を符号化したものなので、原規格分離規則の例外として一般統合漢字には含めませんでした。そのままではKS C 5601-1987とのラウンドトリップを実現できなくなることから、互換漢字に含め、KS C 5601-1987とのラウンドトリップ専用に使います。
②22文字は他の原規格にあり、統合漢字に含まれる漢字の複製または統合できる派生文字です。原規格とラウンドトリップする目的で含まれているものです。
③12文字(U+FA0E, U+FA0F, U+FA11, U+FA13, U+FA14, U+FA1F,U+FA21, U+FA23, U+FA24, U+FA27, U+FA28, U+FA29)はUnicodeコンソーシアムから出した原典にあります。この12文字は統合漢字の拡張として使うことができます。
U+FA30~U+FA6Aの59種類の互換漢字はJIS X 0213:2000とのラウンドトリップ専用で他の目的には使えません。JIS X 0213:2000には原規格分離規則が適用されないため、JIS X 0213:2000は統合漢字拡張Aに追加されたにも関わらず、59文字が他の文字と統合化されてしまったための救済措置なのでしょう。

CJK互換補助漢字(U+2F800~U+2FA1D)
CNS 11643-1992の面3, 4, 5, 6, 7,15とのラウンドトリップ専用で他の目的には使えません。これらのCNS文字集合はIRGの統合化規則と大幅に異なる統合化規則を使っていたため、一般統合漢字を決める際に原規格分離の例外として扱われていたのです。しかし、そのままではラウンドトリップができなくなるため救済したのでしょう。

Unicodeの仕様書の漢字の部分を要約しましたのは、Webでいくつか文書を読んでみましたが、どうも、仕様書を読み込まずに、書いているものがあるように見受けられたからです。

このように申し上げている私も、Unicodeの仕様書で統合漢字の部分を精読したのは初めてなんです。お陰でいろいろ分かりました。仕様書を読み込むのは大事ですね。やはり :-)

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック