このプロジェクトは、Webで使用するスプライトシートスタイルの画像とともに、絵文字に関する簡単なデータを提供します。
現在のバージョンは絵文字バージョン15.1(2023年9月)をサポートしています
絵文字データのカタログはこちらをご覧ください:http://projects.iamcal.com/emoji-data/table.htm
Git Repoはかなり大きい(ほぼ4GB)ですが、すべてが含まれています。 npm
使用したい場合は、次のことができます。
npm install emoji-datasource
これにより、32pxのフルフィナーリスプライトシート(フォールバック画像付き)のみがインストールされます。異なるサイズのシート(16、20または64px)、量子化されたシート(128または256色)、非フォールバック(クリーン)シート、または個々の画像(64px)が必要な場合は、追加のNPMモジュールをインストールする必要があります。
npm install emoji-datasource-apple
npm install emoji-datasource-google
npm install emoji-datasource-twitter
npm install emoji-datasource-facebook
また、JSDelivr CDNを介してダウンロードせずに使用することもできます(ここではさまざまなサイズ)。
必要なファイルはemoji.json
です。このように見える絵文字のエントリの配列が含まれています。
[
{
"name" : " WHITE UP POINTING INDEX " ,
"unified" : " 261D-FE0F " ,
"non_qualified" : " 261D " ,
"docomo" : null ,
"au" : " E4F6 " ,
"softbank" : " E00F " ,
"google" : " FEB98 " ,
"image" : " 261d.png " ,
"sheet_x" : 1 ,
"sheet_y" : 2 ,
"short_name" : " point_up " ,
"short_names" : [
" point_up "
],
"text" : null ,
"texts" : null ,
"category" : " People & Body " ,
"subcategory" : " hand-single-finger " ,
"sort_order" : 170 ,
"added_in" : " 1.4 " ,
"has_img_apple" : true ,
"has_img_google" : true ,
"has_img_twitter" : true ,
"has_img_facebook" : false ,
"skin_variations" : {
"1F3FB" : {
"unified" : " 261D-1F3FB " ,
"image" : " 261d-1f3fb.png " ,
"sheet_x" : 1 ,
"sheet_y" : 3 ,
"added_in" : " 6.0 " ,
"has_img_apple" : true ,
"has_img_google" : false ,
"has_img_twitter" : false ,
"has_img_facebook" : false ,
}
...
"1F3FB-1F3FC" : {
...
}
},
"obsoletes" : " ABCD-1234 " ,
"obsoleted_by" : " 5678-90EF "
},
...
]
各フィールドの意味は次のとおりです。
フィールド | 説明 |
---|---|
name | 叫び声の大文字のオフカルユニコード名。 |
unified | Unicode CodePoint、4-5 HEX桁として。絵文字には2つ以上のコードポイントが必要な場合、1F1EA-1F1F8のように指定されています。ここに含まれるバリエーションセレクター(-fe0f)を指定する必要がある絵文字の場合。 |
non_qualified | バリエーションセレクターのない使用もある絵文字の場合、そのバージョンはここに含まれています(そうでなければnullです)。 |
docomo 、 au 、softbank 、 google | さまざまなモバイルベンダーが使用するレガシーユニコードコードポイント。 |
image | 画像ファイルの名前。 |
sheet_x 、 sheet_y | スプライトシートの画像の位置。 |
short_name | キャンプファイヤー、githubなどでサポートされている画像の短い名前の一般的な名前:コロンシンタックス: |
short_names | 既知のすべての名前の配列。 |
text | 絵文字のASCIIバージョン(例えば:) 、またはnullが存在しない場合。 |
texts | この絵文字に変換されるべきASCII絵文字の配列。各ASCII絵文字は、単一の絵文字エントリに対してのみ表示されます。 |
category 、 subcategory | カテゴリとサブカテゴリのグループ名。 |
sort_order | Unicode CLDR順序に基づいて、すべての絵文字のグローバルソートインデックス。 |
added_in | このコードポイント/シーケンスが追加された絵文字バージョン(以前はUnicodeバージョン)。 |
has_img_* | 指定された画像セットに、利用可能な画像(画像プロップで名前が付けられた)があるかどうかのフラグ。 |
skin_variations | 複数の肌の色合いのバリエーションを備えた絵文字の場合、肌のトーンがキーにした代替グリフのリスト。単一の絵文字内の複数の肌の色調をサポートする絵文字の場合、各肌の音はダッシュ文字によって分離されます。 |
obsoletes 、 obsoleted_by | 性別バージョンの好みで、もはや使用されていない絵文字。 |
各画像セット(Apple、Googleなど)について、いくつかの異なる「スプライトシート」を生成します。すべての絵文字の大きな画像が縫い合わされています。
シート内のすべての絵文字画像には周囲に1ピクセルの透明な境界があります。そのため、64pxシートは本当に66pxの正方形で構成されていますが、16pxシートは実際には18pxの正方形などで構成されています。次のように、 sheet_x
およびsheet_y
プロパティを使用してシートに次のようになります。
x = (sheet_x * (sheet_size + 2)) + 1;
y = (sheet_y * (sheet_size + 2)) + 1;
GITリポジトリの内部には、ルートディレクトリにいくつかのシートがあり、 sheets-indexed-128
、 sheets-indexed-256
、 sheets-clean
ディレクトリにいくつかのシートがあります。 NPMパッケージでは、 img/{$set}/sheets*
パスの下にそれらを見つけることができます。例えば:
gitレポ | NPMパッケージ |
---|---|
/sheet_apple_16.png | /img/apple/sheets/16.png |
/sheets-indexed-128/sheet_apple_16_indexed_128.png | /img/apple/sheets-128/16.png |
/sheets-clean/sheet_apple_16_clean.png | /img/apple/sheets-clean/16.png |
これらの例では、画像セットはAppleのもので、画像は16pxです。一番上の列のシートは24ビット色で、中央の列のシートは128色のみのインデックス付きカラーパレットを使用しています。これにより、画像ははるかに小さくなりますが、多くの品質を犠牲にします。 128色と256色の両方のカラーシートが提供されています。一番下の列のシートには、欠落している画像のフォールバックが含まれていないため、GoogleシートにはGoogle画像のみが含まれています(Appleのフォールバックはありません)。これは、一部の画像がフォールバック文字(疑問符)に置き換えられることを意味しますが、使用権はより単純です。
change.mdを参照してください
画像はソースから抽出され、このライブラリは最新の利用可能なバージョンを追跡しようとします。 AppleやAndroidの画像(毛むくじゃらの心など)の古いバージョンを探している場合は、以前の改訂を確認する必要があります。
画像セット | ソースバージョン | サポートされた絵文字 | 欠落している画像 |
---|---|---|---|
りんご | iOS 17.4ベータ | 絵文字15.1 | 3 |
グーグル | Noto Emoji、v2.042 | 絵文字15.1 | 0 |
ツイッター | Twemoji(Fork)、V15.0.3 | 絵文字15.0 | 118 |
V9、フェッチされた2024-02-05 | 絵文字15.0 | 142 |
Spritesheet画像を使用し、使用権が懸念される場合は、「クリーン」バージョンを使用してください。これは、絵文字の欠落にフォールバック画像を使用しないようにします(詳細については、上記のSpritesheetセクションを参照してください)。