連載
» 2016年04月27日 05時00分 UPDATE

Tech Basics/Keyword:Unicode絵文字(Emoji)

人物や顔、感情、物など、さまざまな事象や物事を簡潔な絵柄で表現する絵文字は、カジュアルなコミュニケーションには欠かせない。日本の携帯電話から始まった絵文字は今では世界中で使われている。

[打越浩幸,デジタルアドバンテージ]
Tech Basics/Keyword
Windows Server Insider


「Tech Basics/Keyword」のインデックス

連載目次

 「絵文字(emoji)」とは、人物や顔、感情、物、天気、乗り物、食べ物、動物など、さまざまな物や事象を小さな絵柄として表現したピクトグラム(サイン、記号)の一種である。文字と違って絵で表現しているので、誰が見てもすぐに内容を理解できるし、その利用も容易である。

Unicode 8.0の絵文字の例 Unicode 8.0の絵文字の例
親しい間柄でのメールやショートメッセージの投稿時など、カジュアルなコミュニケーションに、今や絵文字は欠かせない。

絵文字の歴史

 テキスト形式でのメッセージ交換が中心だった昔は「顔文字」とか「エモーティコン」といって、アルファベットや記号などを組み合わせて顔や感情などを表現していた。それを文字フォントの形で表現できるようにしたのが絵文字である。

 絵文字は当初、日本の携帯電話(NTTドコモ、ソフトバンク、KDDI)で広く使われていたが、それらをベースにして2008年頃、Unicode(用語解説)規格への統合が行われた。

 携帯電話やチャットアプリなどで使われていた絵文字を全て取り込んで相互運用性などを確保したことにより、その後は急速に絵文字の利用が進んだのは承知の通りだ。昨今では欧米圏でもインターネットやメールなどで絵文字が使われるシーンが増えてきており、2015年にはOxford Dictionariesの2015年の単語にも選ばれたほどである。

 なおUnicodeの絵文字は、LINEのスタンプのように、より高度で表現力の高いグラフィックス表示能力を持たせるようなことは意図していない。Unicodeの絵文字はあくまでも文字コードとして絵を扱うためのものであり、特別な事前の準備なしに(専用アプリのインストールなどしなくても)、どの環境でも表示できるようにすることを目的としている。

 そのため、賛同を得にくいようなものや、利用頻度が限られるようなものは絵文字としては追加しないという方針をとっている。

Unicodeで定義されている絵文字

 Unicodeでは、Ver.6.0の時に最初の絵文字が700文字ほど定義されてから何度か拡張され、最新のUnicode 8.0では1300個弱の絵文字が定義されている。

 Unicodeにおける絵文字の詳細仕様は「Unicode Technical Report #51(UTR #51)」で決められている。日本の携帯電話の絵文字から始まったし、携帯電話にあった絵文字をほぼ全て収容するという方針を取ったため(こうしておかないと、携帯やインターネット間で通信したときに、意図しない文字にマッピングされて情報が変更・欠落してしまうことがある)、日本を連想するものがかなり多く定義されている。

 なおUnicodeで定義しているのは文字コード(コードポイント)と、参考となる例示図形のみである。実際の絵文字フォントのデザイン(絵文字の外観)、カラーなどをどのようにするかはフォント制作者に委ねられている。

 UTR #51の仕様も随時改訂されている。最終版のVer.2.0が2015年11月に発行された後、その改訂版Ver.3.0のドラフト4が2016年3月に発行された。以下では、この仕様書に基づいて、Unicodeの絵文字の特徴的な機能を紹介しておく。

絵文字のコードポイント

 Unicodeで定義されている絵文字の一覧は次のページで参照できる。

 ここでは全部で1624文字が定義されている。絵文字のコードポイント(Unicodeの各文字に付けられている番号)はU+1F600から上の部分が割り当てられているが、歴史的な経緯などもあり、必ずしも連続して割り当てられているわけではない。

絵文字データの一覧 絵文字データの一覧
「Full Emoji Data」のサイトで公開されている絵文字データの一覧。
  (1)絵文字のUnicodeコードポイント。
  (2)ブラウザでの表示例。これはWindows 10上のMicrosoft Edgeで表示したところ。
  (3)Unicodeの文字マップ上での例示書体。Unicodeの絵文字として色は定義していない。
  (4)ブラウザや環境ごとの表示例。
  (5)英語名。

絵文字修飾子による肌の色の違いの表現

 「絵文字修飾子(emoji modifier)」とは、顔や人などの肌の色を制御するための修飾子である。これを通常の絵文字の直後に置くことにより、絵文字で描かれている人物の肌の色を変更できるようになる。

 当初制定された絵文字規格では、人の顔や肌の色はある特定の一種類のみで(これは日本の携帯電話の絵文字をベースにしたため)、世界中の多様な人種構成を表現できるようにはなっていなかった。

 これを解決するには、さまざまな肌の色を持つ絵文字を新たに追加するという方法もある。だが、これだと検索などで従来と互換性を保てない。そこで既存の文字コードはそのままにして、その直後に文字を修飾する新たな文字を置くことにした。

 ちなみにUnicodeでは、このように、2つ以上の文字コードポイントを組み合わせて1つの文字を表現する「合字(ごうじ、リガチャー)」が多くの場所で利用されている。

 肌の色の修飾は、「Fitzpatrick Scale(フィッツパトリック分類)」と呼ばれる皮膚の色(実際には紫外線に対する皮膚の反応)の分類に基づいて、全部で5つ(5段階)定義されている。これをベースとなる特定の64文字と組み合わせた場合にのみ、その肌の色を変更できる。肌の描写が含まれない他の絵文字と組み合わせた場合は、効果はない(色は変わらない)。ベースとなる64文字は次の通りである。

 修飾子と組み合わせると、次のようになる。

肌の色を変更する絵文字修飾子とその例 肌の色を変更する絵文字修飾子とその例
ベースとなる絵文字(この例ではU+1F471)の直後にU+1F3FB〜U+1F3FFの修飾子を置くと、直前の絵文字の中の肌の色が変わる(右側の列参照)。また、この絵文字修飾子による合字をサポートしていないアプリの表示では、左側のように、元の絵文字と修飾子が独立して表示されるだけで、肌の色は変わらない。だが、このような四角が表示されることで、修飾子が付いているということだけは分かるようになっている。

 何も修飾子を付けない場合は、仕様では「汎用的で、現実にはあり得ないような肌の色」をデフォルトとして使うことになっている。具体的には、次の3色のような色が例として挙げられている。

デフォルトの肌の色 デフォルトの肌の色
絵文字修飾子がない場合は、このような「汎用的で、非現実的な色」にするべきとされている。

 なお、この修飾子で変更できるのは肌の色だけである。髪の色とか、それ以外の化粧のような色を指定することはできない(そのような要求は、絵文字にとっては想定外)。

LGBTをサポートしたカップル/ファミリー絵文字

 Unicodeの絵文字には、カップルや家族を表す2人や3人、4人が一組になった絵文字がある。LGBT(→WikiPedia)をサポートするため、これらの絵文字では、絵文字を構成する人物を一人ずつ並べ、自由に構成を変更できるようにしている。

 つまり、「MAN-WOMEN」という組み合わせだけでなく、「MAN-MAN」「WOMEN-WOMEN」といった絵文字にもできる。このためには、ベースとなる人物の絵文字をU+200D(ZERO WIDTH JOINER)で連結して並べればよい。

LGBT絵文字の例 LGBT絵文字の例
これは「MAN、MAN、GIRL、GIRL」などのファミリーを表す絵文字の例。全部で7つのUnicodeのコードポイントを連結して表現しているので、かなり長くなっている。合字をサポートしていない環境だと、4人が別々の文字として描画される。
  (1)ファミリーを表す4人分のコードポイントと、それを連結する3つのU+200Dを合成したコード例。
  (2)これはWindows 10のビルド14328(Insider Previewビルド)上のMicrosoft Edgeでの描画例。ファミリーの合字がサポートされていると、このように1文字の絵文字として表現される。
  (3)ファミリー構成。
  (4)こちらはファミリーの合字をサポートしていないInternet Explorer 11上での描画例。このように4人の絵文字が別々に描画される。

Windows OSにおける絵文字サポート

 Windows OSでは、Windows 8.1以降でカラーの絵文字フォントがサポートされている

 だが肌の色を変更する絵文字修飾子などは、Windows 10のInsider Preview、ビルド14316以降+Microsoft Edgeという環境でないと動作しない。これより古いビルドやInternet Explorerでは、合字を使う絵文字は、複数の文字に分解されて表示される。

Windows 10上での絵文字の表示例 Windows 10上での絵文字の表示例
Windows 10のInsider Preview(ビルド14316)以降では、絵文字のフォントデザインが変更され、絵文字の周囲が太い線で縁取られるなど、見やすくなっている。「Announcing Windows 10 Insider Preview Build 14316」参照。
  (1)Microsoft Edgeで表示したところ。
  (2)正しく意図した通りに表示されている。
  (3)同じOS上のInternet Explorer 11で表示したところ。
  (4)合字がサポートされていないので、複数の文字に分かれて表示されている。
  (5)Windows 10 TH2(ビルド10586)上のInternet Explorer 11で表示したところ。
  (6)このOSでは絵文字の合字がサポートされていないし、古いデザインの絵文字フォントなので、視認性が劣っている。


 日本の携帯電話から始まった絵文字は、カラーになって、今や世界的にも広く普及し始めている。今後は、日本以外からの需要も取り込んで、より多くの文字が使えるようになるだろう。ちなみに次期Unicode規格で追加される候補となっている絵文字は次のページで確認できる。

「Tech Basics/Keyword」のインデックス

Tech Basics/Keyword

Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。