絵文字ユニコード変換
絵文字をUnicodeコードポイント(U+XXXX)に変換するか、コードポイントを貼り付けて絵文字を取得します。
絵文字 → Unicode
Unicode → 絵文字
文字の詳細
使い方
- 絵文字またはコードポイントを入力: 絵文字文字を貼り付けるか、Unicodeコードポイントを入力します(例: U+1F600)。
- すべての表現を表示: ツールは10進数コード、hex値、HTMLエンティティ、CSSエスケープ、UTF-8バイト、JavaScriptエスケープシーケンスを表示します。
- 任意の形式をコピー: 結果をクリックして瞬時にコピーし、HTML、CSS、JavaScriptで使用します。
なぜEmoji Unicodeコンバーターを使うのか?
絵文字はUnicodeコードポイントでエンコードされていますが、各システムは異なる形式を使用します。HTMLは😀または😀のエンティティを必要とします。CSS擬似要素は\1F600のエスケープ形式を必要とします。JavaScript文字列は\u{1F600}を必要とします。手動で見つけるのは退屈です, このツールは絵文字の単純な入力からすべての形式を瞬時に生成します。開発者、デザイナー、コンテンツクリエイターは、生の文字をコピー&ペーストするとエンコーディングの問題が発生する可能性があるコードに絵文字を安全に統合するためにこれを使用します。
サポートされている出力形式
- Unicodeポイント, 参照用のU+1F600表記
- HTML 10進数エンティティ, HTMLページ用の😀
- HTML hexエンティティ, 😀の代替HTML形式
- CSSエスケープ, CSS contentプロパティで使用する\1F600
- JSエスケープ, JavaScript文字列リテラル用の\u{1F600}
- UTF-8バイト, 低レベルエンコーディング作業用の生のバイトシーケンス
絵文字の簡潔な歴史と、よく誤解されていること
最もよく語られる起源説は、NTT DoCoMoのShigetaka Kurita(栗田穣崇)が1998〜1999年に 「最初の絵文字」 を作ったというものだ。この話は事実だが不完全だ。Kurita以前にも注目すべき2つの出来事がある。
- Sharp PA-8500(1988年10月)。現代の絵文字の定義を満たすことが知られている最古の絵文字セットは、日本の電子手帳に搭載されていた。16×16ピクセルで102種類の絵文字を収録しており、Kuritaのセットより10年早かった。研究者たちがデバイスの現存品を発見した後、Emojipediaは2024年にその再発見を報じた。
- J-Phone DP-211SW(1997年)。Kurita自身が2019年1月のSNS投稿で、絵文字セットを搭載した最初の携帯電話はDoCoMoのものではないと認めた。彼はJ-PhoneのDP-211SWを指摘した。このデバイスは1997年頃に約90種類のモノクロ絵文字を搭載していた。SoftBankが後にJ-Phoneを吸収合併したことが、日本でのAppleの最初の絵文字展開(後述)が特定のSoftBank SIMホルダー向けに出荷された理由だ。
- Shigetaka KuritaのNTT DoCoMo i-modeセット(1998〜1999年)。Kuritaは176絵文字セットの設計を主導した。12×12ピクセルのグリッド上に描かれており、1グリフあたり約18バイト、セット全体で3キロバイトという、1999年2月にNTT DoCoMoが開始した帯域幅の制限されたi-modeプラットフォームにとって重要な制約だった。日本のマンガの記号(manpu)・天気のピクトグラム・漢字・道路標識を参考にした。2016年にニューヨーク近代美術館(MoMA)がKuritaのオリジナル176絵文字セットを永久デザインコレクションとして収蔵した。
絵文字が世界に広まった経緯
Kuritaのセット以降の10年間、絵文字はDoCoMo・KDDI・SoftBankという3つの競合する互換性のないベンダーセットを持つ日本のキャリア固有の現象だった。世界への普及は3つの段階で起きた。
- 2008年11月21日、iPhone OS 2.2。AppleはApple Color Emojiの最初のバージョン(リリース時471グリフ)を公開した。キーボードは公式にはSoftBank SIMカードを使用する日本のiPhoneユーザーに限定されていた。Apple Color Emojiはあらゆる主要なオペレーティングシステムで出荷された最初のカラーフォントとして広く引用されている。
- 2011年10月12日、iOS 5。Appleは世界中でiOS 5をリリースし、初めて設定メニューから誰でも、どこでも絵文字キーボードを有効にできるようになった。多くの歴史家はこれを絵文字の世界的な普及の始まりと見ている。
- 2013年10月31日、Android 4.4 KitKat。Googleがフルカラーの絵文字サポートと組み込みの絵文字キーボードを備えた最初のバージョン。KitKatのセットには約850種類の絵文字が含まれており、Googleの独特なブロブスタイルのデザインを導入した(その後Android 8 Oreoで現在見られるより一般的な丸いデザインに置き換えられた)。
Unicodeコンソーシアムの標準化作業も並行して進んだ。2010年10月、Unicode 6.0が絵文字を公認セットとして追加した最初のバージョンで、日本のキャリアセットの統合から約722種類の絵文字を収録した。2014年8月、Unicode技術報告書#51が公開され(後に2017年5月にUTS #51に昇格)、絵文字のエンコード・シーケンス・表示方法の正式な仕様となった。
なぜほとんどの絵文字コードポイントはU+FFFFより上に存在するのか
Unicodeはすべての文字を65,536コードポイントを持つ17のプレーンに整理している。プレーン0は基本多言語面(BMP)で、U+0000からU+FFFFの範囲だ。日常的に使われる文字のほとんどはここに存在する。プレーン1〜16は補助プレーン(非公式に「アストラルプレーン」とも呼ばれる)で、U+10000からU+10FFFFの範囲だ。絵文字の大部分はプレーン1(補助多言語面)に存在し、具体的には感情図記号(U+1F600〜U+1F64F)・その他の記号と絵文字(U+1F300〜U+1F5FF)・交通・地図記号(U+1F680〜U+1F6FF)・補助記号と絵文字(U+1F900〜U+1F9FF)などのブロックに分布している。新しいSymbols and Pictographs Extended-AブロックはU+1FA70〜U+1FAFFの範囲だ。
これはUTF-16を使うため開発者にとって重要だ。UTF-16はBMPのコードポイントを単一の16ビット単位でエンコードするが、補助コードポイントはサロゲートペアとしてエンコードしなければならない。高サロゲート範囲U+D800〜U+DBFFと低サロゲート範囲U+DC00〜U+DFFFから各1つの計2つの16ビット単位だ。JavaScriptの文字列型は内部的にUTF-16であるため、"😀".lengthは1ではなく2を返す。エンジンはコードポイントではなくコード単位を数えているからだ。最近のJSコードではArray.from("😀").lengthまたはIntl.Segmenter APIを使ってグラフェムクラスターを正確に数える。
UTF-8は同じ絵文字を4バイト列として扱います。文字😀(U+1F600)はUTF-8ではF0 9F 98 80です。これがMySQLの古いutf8文字セット(実際にはutf8mb3で、3バイト列までに制限されている)が絵文字を保存できない理由であり、utf8mb4が必要になります。MySQL 8.0はutf8mb4をデフォルトにしましたが、レガシーなデータベースでは依然として絵文字の保存に失敗し、SQLモードに応じて黙って切り詰めたりエラーになったりします。これは現実によくあるバグです。
バリエーションセレクター:同じハートが黒にも赤にも見える理由
Unicodeの文字の一部は 「二重の性格」 を持っている。コンテキストによって、プレーンなモノクロのテキストシンボルとしても、カラフルな絵文字としても表示できる。2つの表示セレクターがUnicode 3.2(2002年3月)に追加された。U+FE0F(バリエーションセレクター16、VS16)は絵文字プレゼンテーションを要求し、U+FE0E(VS15)はテキストプレゼンテーションを要求する。例:❤(U+2764、 「Heavy Black Heart」 )はデフォルトがテキスト表示のシンボルで、❤️(U+2764 U+FE0F)はほとんどのアプリがカラーで表示する絵文字プレゼンテーションの赤いハートだ。VS16のありなしで同じコードポイントが全く異なって見える。
有名な関連例が太陽です。U+2600「Black Sun With Rays」はデフォルトではテキスト形式のモノクロですが、VS16(U+2600 U+FE0F)を加えるとカラフルな☀️になります。対照的に、U+1F31E「Sun With Face」はUnicode 6.0(2010年10月)で追加された別個のコードポイントで、デフォルトで絵文字表示となり、セレクタなしで笑顔の🌞として表示されます。2つの異なるコードポイント、2つの異なる歴史を持ち、どちらも非公式に「太陽の絵文字」と呼ばれています。
スキントーン修飾子とフィッツパトリックスケール
Unicode 8.0(2015年6月17日リリース)で、標準仕様は人物を表す任意の絵文字のスキントーンを調整する5つの修飾文字を追加した。これらの修飾子はフィッツパトリックスケール(ハーバード大学の皮膚科医Thomas B. Fitzpatrickが1975年に開発した皮膚科学的分類)に基づいている。医学的なスケールには6タイプ(I〜VI)がある。絵文字の目的上、タイプIとIIは1つの修飾子に統合されており、絵文字修飾子は5つとなる。
U+1F3FB明るい肌(フィッツパトリックI-II)U+1F3FCやや明るい肌(フィッツパトリックIII)U+1F3FD中間の肌(フィッツパトリックIV)U+1F3FEやや濃い肌(フィッツパトリックV)U+1F3FF濃い肌(フィッツパトリックVI)
使い方は位置依存です。修飾子は対応する人型絵文字の直後に置きます。たとえば👋(U+1F44B、手を振る)+ U+1F3FD で👋🏽、中間の肌色の手振りになります。受信側のフォントが特定のベース+修飾子の組み合わせに対応していない場合、修飾子は別個の茶色い四角として表示されます。これは古いシステムでよくある表示の失敗です。
ゼロ幅ジョイナーシーケンス:複合絵文字の構成方法
ゼロ幅ジョイナー(コードポイントU+200D)は、レンダラーがシーケンスを認識した際に複数の絵文字を1つの複合グリフに結合させる 「接着剤」 の文字だ。ZWJは不可視で幅もなく、周囲の文字を融合させるようにレンダリングエンジンに信号を送る目的だけで存在する。主に3つのパターンがある。
- 家族シーケンス。👨👩👧👦(「家族:男性、女性、女の子、男の子」)のような家族絵文字は
U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466としてエンコードされます。ZWJで区切られた4つの人物絵文字です。受信デバイスに該当する合成グリフがない場合、フォールバックとして各構成要素が横並びで表示されます。これはクロスプラットフォームの絵文字表示で最もよく見られる失敗の一つです。 - 職業・役割シーケンス。👩💻(「女性技術者」)は
U+1F469 U+200D U+1F4BBです。女性 + ZWJ + ラップトップ。現在のUnicodeのほとんどの職業絵文字はこの方式で構成されており、これにより職業と肌の色の組み合わせごとに別個のコードポイントを発行せずに済みます。 - アイデンティティ・プライドシーケンス。レインボーフラッグ🏳️🌈は
U+1F3F3 U+FE0F U+200D U+1F308です。VS16付きの白旗 + ZWJ + 虹。
Unicode 15.1(2023年9月12日リリース)で特に多用された。15.1では118種類の新絵文字が追加されたが、そのうち108種類は既存絵文字の方向バリアント(デフォルトの左向きではなく右向き)だ。重要なのは、15.1が新しいベースコードポイントをゼロ追加したという点で、すべての新絵文字は既存の構成要素から構築されたシーケンスだった。
キーキャップ、地域インジケーター、フラグのしくみ
キーキャップシーケンス。1️⃣のようなキーキャップ絵文字は3つのコードポイントから構成されます。数字(U+0031 = 「1」)、VS16(U+FE0F)、そして囲みキーキャップ結合文字U+20E3です。結合キーキャップは1999年にUnicode 3.0の一部として承認されました。キーキャップ絵文字の全セットは0-9に#と*を加えたものをカバーします。この3文字のシーケンスは、単純な.lengthチェックを常に誤らせます。
地域表示記号のペア(旗)。Unicodeは国旗を単一の文字としてエンコードしません。代わりに、26個の地域表示記号を定義しており、コードポイントはU+1F1E6からU+1F1FFまで、それぞれラテン文字AからZに対応します。旗は、ISO 3166-1 alpha-2の国コードを綴る地域表示記号のペアです。フランス国旗🇫🇷はU+1F1EB U+1F1F7で、地域表示文字のFとRです。26 × 26 = 676通りの可能なペアのうち、有効なISO国コードに対応するのは約270通りだけで、残りはほとんどのプラットフォームで2つの文字記号として表示されます。
最近の絵文字バージョン、概要
- Unicode 15.0、2022年9月13日リリース。ピンクのハート🩷、水色のハート🩵、灰色のハート🩶、押す手🫷🫸、震える顔🫨、クラゲ🪼、ヘラジカ🫎、ロバ🫏、しょうがの根🫚など、31個の新しい絵文字を追加。
- Unicode 15.1、2023年9月12日リリース。118個の新しい絵文字を追加。すべて新しいベースコードポイントではなくZWJシーケンスです。108個は方向の異なる変種で、残りには不死鳥🐦🔥、ライム🍋🟩、食用の茶色いキノコ🍄🟫、壊れた鎖⛓️💥が含まれます。
- Unicode 16.0、2024年9月10日リリース。8個の新しい絵文字を追加。目の下にくまのある顔(
U+1FAE9)、指紋(U+1FAC6)、飛び散り(U+1FADF)、根菜(U+1FADC)、葉のない木(U+1FABE)、ハープ(U+1FA89)、シャベル(U+1FA8F)、そしてサーク島の旗🇨🇶。注:この新しい顔は正式には「目の下にくまのある顔」であり、「あくびする顔」ではありません(あくびする顔の絵文字🥱U+1F971は2019年にUnicode 12.0で追加されたもので、無関係です)。 - Unicode 17.0(2025年9月9日リリース)。新コードポイントの絵文字が7種類追加された:Distorted Face、Fight Cloud、Hairy Creature(非公式にはビッグフット)、Orca、Landslide、Trombone、Treasure Chest。さらに156種類のスキントーンとジェンダーバリエーションが追加され、17.0の新絵文字の総数は163種類となった。主要ベンダーのほとんどは2026年前半にかけて展開する予定で、Microsoftは通常さらに四半期ほど遅れる傾向がある。
ベンダーデザイン:同じコードポイント、異なるアートワーク
Unicodeは意味とコードポイントを標準化するが、アートワークは標準化しない。各プラットフォームは独自の絵文字フォントを搭載しており、視覚的な違いは学術研究(Hecht et al.、CSCW 2018、クロスプラットフォームの絵文字誤解について)で記録されたコミュニケーションの誤解を引き起こすほど実質的だ。主要なフォント:
- Apple Color EmojiはiOS・iPadOS・macOS・tvOSに搭載されている。2008年11月に471グリフで初登場し、2021年9月までに3,633種類以上に拡大した。プロプライエタリであり、Appleプラットフォーム外への再配布は法的に許可されていない。
- Noto Color Emoji(Google)はAndroid(4.4 KitKat以降、2013年10月)・ChromeOS・Gmailに搭載されている。SIL Open Font Licenseのもとオープンソースだ。
- Segoe UI Emoji(Microsoft)はWindows 8.1以降に搭載されている。2021年のFluent Emojiリフレッシュにより、Microsoft 365に3Dスタイルのデザインが導入された。
- One UI Emoji(Samsung)はGalaxyスマートフォンに搭載されており、AndroidがデフォルトでNotoを使用しているにもかかわらず、GoogleのNotoとは異なる。
- Twemojiは2014年11月6日にTwitterがオープンソース化した874種類のSVGデザイン(コードはMITライセンス、グラフィックスはCC-BY 4.0)だ。Xへのリブランド以降、オリジナルのTwitterリポジトリは積極的にメンテナンスされていないが、コミュニティフォーク(特に
jdecked/twemoji)が標準を引き継いでいる。
デバイスのフォントに特定のコードポイントまたはシーケンスのグリフがない場合、ブラウザとオペレーティングシステムは空白の四角形を表示する。これは一般的に豆腐(tofu)と呼ばれる。豆腐は受信側のデバイスが送信側より古いことを示す最も強いシグナルだ。新しい絵文字がUnicodeのリリースからすべての主要プラットフォームに普及するまで、通常6〜18ヶ月かかる。
アクセシビリティ:コンテンツ作成者が知るべきこと
最新のスクリーンリーダー(NVDA、JAWS、VoiceOver、TalkBack)は、各絵文字のCLDR短縮名をUnicode Common Locale Data Repositoryから読み上げます。たとえば😀は「grinning face」、👨👩👧👦は「family: man, woman, girl, boy」です。Unicode CLDRは90以上の言語で公式の短縮名とキーワードを管理しており、AppleとMicrosoftの主要なスクリーンリーダーはすべてこれを使用しています。WCAG技法H86は、意味のある絵文字を<span role="img" aria-label="thumbs up">👍</span>で囲むことを推奨しています。装飾的な絵文字はaria-hidden="true"で隠すべきです。3つの落とし穴があります。繰り返された絵文字は冗長になります(😂😂😂😂😂は「Face with tears of joy」と5回読み上げられます)。テキスト形式の顔文字(:))はUnicode短縮名がなく「colon close-paren」と読み上げられます。肌の色修飾子は読み上げられます(👋🏽は「waving hand: medium skin tone」と読まれ、情報は増えますが遅くなります)。
Emojipediaと文化的インフラストラクチャー
Emojipediaは2013年に、誕生日のディナーの後に思いつきでドメインを登録したオーストラリア人デザイナーJeremy Burgeによって設立されました。現在では絵文字の意味、ベンダーのデザイン、リリース情報に関する事実上のリファレンスサイトとなっており、2021年にはおよそ5億9,000万ページビューを記録しました。BurgeはUnicode絵文字小委員会に在籍し、2022年までEmojipediaの「最高絵文字責任者(Chief Emoji Officer)」を務め、世界絵文字デー(7月17日)を創設しました。これはAppleのカレンダー絵文字📅が7月17日を表示することにちなんで選ばれた日で、それ自体が2002年のMacworld ExpoでのAppleのiCalの当初の発表日へのオマージュです。Emojipediaは2021年8月にZedge, Inc.(NYSE: ZDGE)に買収され、同じブランドで運営を続けています。新しい絵文字の提案を評価するUnicode絵文字小委員会は、現在、元Googleのデザインリードであり、同小委員会初の女性委員長であるJennifer Danielが委員長を務めています。
クイックリファレンス数値
- 3,953:Unicode 17.0(2025年9月)時点の絵文字総数
- 176:栗田穣崇によるi-mode初代セット(1999年)
- 102:シャープPA-8500の絵文字数(1988年)
- 12×12:栗田のi-mode絵文字のピクセルグリッド
- 5:肌の色修飾子の数(フィッツパトリックIとIIは統合)
U+200D:ゼロ幅接合子(ZWJ)U+FE0F/U+FE0E:絵文字/テキスト表示セレクタU+20E3:囲みキーキャップ結合文字U+1F1E6~U+1F1FF:旗のペアを構成する地域表示文字A-ZF0 9F 98 80:U+1F600(😀)のUTF-8バイト- 17 July:世界絵文字デー
- 21 November 2008:iPhone OS 2.2、初のカラー絵文字フォント
- 12 October 2011:iOS 5、絵文字キーボードが世界中で利用可能に
- October 2010:絵文字を含む最初の標準バージョン、Unicode 6.0
- 17 June 2015:Unicode 8.0、肌の色修飾子を追加