【文字コード】 Unicodeの絵文字 -国旗など、Font Awesome-

SITE/BLOG

 昨年(2024年)までに世界の国々の地図をひととおり描画し終えた。
 その間、国旗がユニコード 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

🐍

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

アイコンフォント Font Awesome

 Font Awesome(fontawesome.com/)というフォントがある。

 [サイト]アイコンフォント。
 畏敬の念を起こさせるフォント---。

 画像ではなくUnicodeの私用領域 Private Use Area(E000~F8FF)を用いたフォント。いわゆる絵文字。

 注意すべきはバージョン4とバージョン5があって、同じアイコンでもHTMLタグが違う点。

 Cocoonのデフォルトは現在バージョン4。
 Cocoon設定 - 全体の「サイトアイコンフォント」で、バージョン5へ変更できる。

 バージョン4の場合、CSSは、

font-family: FontAwesome;

 バージョン5の場合、CSSは、

font-family: "Font Awesome 5 Free";

 ”や半角スペースが抜けていると反映されない。  

 バージョン5で使えるアイコンは、Font AwesomeメニューのIconsから。2021年時点、v5.15で、アイコン数7865。
 バージョン4(fontawesome.com/v4.7/icons/)は、アイコン数675。
 使いたいアイコンをクリックするとUnicodeHTMLタグが表示される。

 CSSではなくHTMLで直接使う場合、HTMLタグをコピーしてペースト。
 例えば、アイコン「history(Unicode:f1da)」の場合、
 バージョン4は、

<i class="fa fa-history"></i>

  (当ブログはバージョン4のまま)

 バージョン5は、

<i class="fas fa-history"></i>

 別のブログでバージョン5を試用中。古いブラウザのままだと表示されない。

 +)バージョン6は2022年から。
   Cocoonはバージョン5まで。

 +)アイコン「grav(Unicode:f2d6)」

 

スポンサーリンク