字体
文字は、言語と直接結び付いて意味を表すものであり、その結び付いた意味によって字種に分類される。そして異なる字種は、原則としてそれぞれ異なる字体を有する。例として図1は「かたな」という意味を持つ字(刀)であり、図2は「やいば」という意味を持つ字(刃)である。このとき図2は図1と比較して一画多い、異なる字体を有している。
しかし、異なる字種が同一の字体を有する場合も稀にある。次項で例を示すが、これらは「同形異字」と呼ばれ、視覚的にはまったく区別することができない。さらに、ひとつの字種に複数の字体が併存していることがある。それら複数の字体はそれぞれ異なる字源から成立している場合もあるし、同じ字源から発生しながらその表現が歴史的・地理的に変化していった結果が固定されている場合もある。例として図2と図3を比較すると中央の筆画の交差に差異が見られるが、これらはともに「ジン」という発音と「やいば」という意味を持つ字である。このように字義、字音が等しい同一の字種でありながら、互いに異なる字体を有する文字を異体字と呼ぶ。異体字のなかで、規範として選ばれている字体を正字体と呼ぶ。
JIS X 0208などの文字集合では基本的に情報交換用の文字を示すのが目的であるため、異体字ごとにコードポイントを割り振ったりはしないことが原則である(ただし固有名詞対応の必要性などから、複数の異体字に個別のコードが与えられているケースが多数見られる)。そのため、コンピュータ上で表示される文字はフォントを作る場合にその一例として採用した文字にすぎない。符号上は正しい文字だがフォントの関係上意図していた字体と違う場合も多く、異体字を包摂(一つのコードポイントに異体字を統合)せずに別にできる方法が必要という声もある。例えばいわゆる「髙=はしごだか」と「高=くちだか」では符号区点は一つしかないが、別のコードポイントを与えるべきだとの声もある。
Unicodeでも基本的に事情は同様であるがその一方でさまざまな既存の規格を取り込む際に「原規格分離 (source code separation) の原則」によって異体字に別のコードポイントが与えられたものもあり(「髙=はしごだか」と「高=くちだか」もこれに該当)、さらに混沌としている。
Unicodeでは、漢字の異体字の問題については「異体字タグ (variant tag)」の導入により包括的な解決を企図するとしていた。実際にUnicode 3.2では異体字タグは「異体字セレクタ(異体字選択子、字形選択子、英: Variation Selector)」という名称で16文字分 (U+FE00 - U+FE0F) が、Unicode 4.