文字コード Unicodeの絵文字(国旗など)

SITE

 昨年までに世界の国々の地図をひととおり描画し終えた。
 その間、国旗がユニコード Unicodeの絵文字で表示できることを知った。

 久々に文字コードについて。
  前回は4バイト文字など。

スポンサーリンク

Unicode

 今、文字コードはシフトJIS Shift-JISよりもUnicodeが標準。

Unicodeのページ(home.unicode.org/)

 Unicodeの基本多言語面 BMP Basic Multilingual Planeは、
 U+0000~U+FFFF

 16進数で0000~FFFF、10進数で0~65535
 16ビット=2バイトだが、
 Unicodeの場合、2バイト文字ではなく、文字によって2バイト~4バイト、最大8バイトまで区々(まちまち)のマルチバイト文字。可変長。

 UnicodeにはUTF-8、UTF-16などがある。
 U+86C7などの86C7は16進数4桁16ビット(=2バイト)。UTF-16:0x86C7
 WindowsのIMEパッドなどで確認できる。
 UTF-8だとE8 9B 87。16進数2桁8ビット×3(=3バイト)。
 以下のサイトに一覧表がある。

オレンジ工房 - 備忘帳 - UTF-8の文字コード表(orange-factory.com/dnf/utf-8.html


 UTF-8、UTF-16については
 文章を書くのに特段意識する必要ないと思う。

 Shift-JISにない字は依然&#使って入力。
  例えば、 U+5CD0の場合、
  峐
  もしくは10進数の
  峐
  で入力

 Unicodeの追加面は、
 U+10000~U+10FFFF

 4バイト文字は16進数5桁から。
 上位サロゲート・下位サロゲート U+D800~U+DFFFの組み合わせなので、20ビットや24ビットではなく、32ビット(=4バイト)。
 例えば、『糸へん+赤』という漢字(𦀗) U+26017の場合、
 UTF-16は0x26017ではなく、
 0xD858 0xDC17になっている。
 WindowsのIMEパッドなどで確認できる。

 なお、16進数5桁20ビットの組み合わせは220で約105万通り。

絵文字(国旗など)

 Unicodeの追加面を使っている絵文字はたくさんある。
 以下のサイトに一覧表がある。

Let’s EMOJI(lets-emoji.com/


 なお、Font Awesomeというアイコンは、
 Unicodeの追加面ではなく
 前述の上位サロゲート・下位サロゲート U+D800~U+DFFFの次の
 私用領域 Private Use Area U+E000~U+F8FFを使用。
 10進数だと57344~63743。6400字分。

 Unicode追加面の絵文字の例)
  U+1F648
  U+1F649
  U+1F64A

  🙈
  🙉
  🙊

 (表示されているかな?)

 国旗は以下のA~Zの2文字連続で表示される。

 🇦 U+1F1E6
 🇧 U+1F1E7
 🇨 U+1F1E8
 🇩 U+1F1E9
 🇪 U+1F1EA
 🇫 U+1F1EB
 🇬 U+1F1EC
 🇭 U+1F1ED
 🇮 U+1F1EE
 🇯 U+1F1EF
 🇰 U+1F1F0
 🇱 U+1F1F1
 🇲 U+1F1F2
 🇳 U+1F1F3
 🇴 U+1F1F4
 🇵 U+1F1F5
 🇶 U+1F1F6
 🇷 U+1F1F7
 🇸 U+1F1F8
 🇹 U+1F1F9
 🇺 U+1F1FA
 🇻 U+1F1FB
 🇼 U+1F1FC
 🇽 U+1F1FD
 🇾 U+1F1FE
 🇿 U+1F1FF

 日本はJPなので、🇯🇵と続けて入力する ⇒ 日の丸。

🇯🇵

 次の旗はドコでしょう?

🇲🇶

 残念ながらWindowsのEdge、Chromeでは表示されない。□□の表示。
  Firefoxでは表示される。
 不具合ではなく、デリケートな国・地域もあるという理由らしい。

 □□じゃドコも何もないが……
 ん?
 いつのまにかマルティニーク MQの旗が変わっていた。
 ヘビじゃなくなった。Unicodeの絵文字はヘビのまま(変わらないかも)。

U+1F40D

🐍

ヘビ~年
マカレロ
マカレロ
レロレロ~
にょろしく

スポンサーリンク
ふシゼン
タイトルとURLをコピーしました