結合文字

結合文字とは、文字コードにおいて、先行する文字と組み合わせて使用される図形文字のことです。これは、単独では意味をなさず、他の文字と組み合わさることで初めて意味を持つ特殊な文字です。主に、発音の変化や文字の装飾を目的として用いられます。

結合文字の種類



Unicodeでは、結合文字は以下の3種類に分類されます。

前進を伴う結合記号 (Spacing combining mark, Mc):デーヴァナーガリー文字の母音記号(例:ā, i, ī)のように、基底文字の左右に配置される記号です。文字の進行方向に合わせて位置が変わるのが特徴です。
前進を伴わない記号 (Nonspacing mark, Mn)ダイアクリティカルマーク(例: ´, ` , ^ )のように、基底文字の上に付加される記号です。文字の進行方向には影響を与えません。
囲み記号 (Enclosing mark, Me):結合用の円や四角など、基底文字を囲むように表示される記号です。特定の文字を強調したり、グループ化したりするのに使われます。

これらの結合文字は、先行する基底文字(非結合文字)と組み合わさることで、結合文字列(combining character sequence, CCS)を形成します。複数の結合文字を組み合わせることも可能で、例えば、複数のダイアクリティカルマークを重ねて表示することができます。ただし、結合文字の種類によっては、表示が異なる場合があります。

結合文字の単独表示



結合文字を単独で表示したい場合は、ノーブレークスペース (U+00A0) を基底文字として使用することができます。これにより、結合文字だけを表示することが可能になります。

正規化



Unicodeには、合成済みの文字も数多く定義されています。そのため、同じ文字を表現するのに、合成済みの文字を使うか、基底文字と結合文字を組み合わせて表現するかで、異なる表現が可能になります。

例えば、「â」は、U+00E2 (latin small letter a with circumflex) でも、U+0061 U+0302 (latin small letter a + combining circumflex accent) でも表現できます。

また、複数の結合文字を使用する場合、その順序が異なっていても同じ文字を表すことがあります。

このように、同じ文字が異なる符号で表現されると、脆弱性の問題が発生することがあります。このため、符号化表現を統一するために正規化が行われます。

ヴィラーマ



ブラーフミー系文字で使用されるヴィラーマも、結合文字(Mn)に属します。ヴィラーマは、通常、先行する文字と後続する文字を結合して合字を作成しますが、記号として先行する基底文字に付加されることもあります。

強制的に「基底文字+ヴィラーマ」と表示させたい場合は、ヴィラーマの後にゼロ幅非接合子 (U+200C) を置きます。また、合字を作成するための結合形を表示させる場合には、ヴィラーマの後にゼロ幅接合子 (U+200D) を置きます。

結合文字ではないもの



[Unicode]]には、分数を構成するための斜線(fraction slash, U+2044)や、[[ハングルの字母]など、結合文字として扱われない文字も存在します。これらの文字は、独自の規則に従って処理されます。

まとめ



結合文字は、テキスト表現の幅を広げる重要な要素であり、多言語対応や特殊な文字表現には欠かせません。しかし、その複雑さから、符号化表現の統一や表示の制御には注意が必要です。正規化やゼロ幅文字を適切に利用することで、文字の表示を正しくコントロールすることができます。

参考文献


『国際符号化文字集合(UCS)JIS X 0221:2014 (ISO/IEC 10646:2012)』日本規格協会。

関連項目


* 囲み文字

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。