絵文字の描画の仕組みについて調査をしています。
今分かっていることとして、Unicode emoji には、単体のコードポイントからなる singleton と、複数のコードポイントからなる emoji sequence があり、
emoji sequence は、大別すると以下の種類だと言う事です。
■Emoji Combining Sequence (囲み文字)
Non spacing mark (結合文字; それ自体は幅を持たず、前の文字に結合してひとつの形になる文字) を含む絵文字
■Emoji Modifier Sequence (skin tone 絵文字)
絵文字のうち人体の肌が露出している文字 (Emoji_Modifier_Base property が Yes の文字) の後ろに Emoji_Modifier (U+1F3FB..U+1F3FF EMOJI MODIFIER FITZPATRICK TYPE 1-2..6) を付けて、肌の色を変更した絵文字
■Emoji Flag Sequence (国旗絵文字
U+1F1E6..U+1F1FF REGIONAL INDICATOR を ふたつ並べた絵文字
■Emoji ZWJ Sequence (家族絵文字、職業絵文字など)
U+200D ZERO WIDTH JOINER (ZWJ) によって複数の絵文字を連結し、1文字として見せる絵文字
そこで、実際にAOSP(android-7.1.1_r1.0)のコードでemoji sequenceをどのように判定して描画しているのかを知りたいです。
該当のコードを教えていただけないでしょうか。
アプリからの描画の要求としては、TextViewのsetTextで絵文字指定時を想定しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/18 08:28