Convertitore di Emoji Unicode

Converti emoji in punti di codice Unicode (U+XXXX) o incolla punti di codice per ottenere l'emoji.

Emoji → Unicode

Unicode → Emoji

Dettagli dei caratteri

Converti un'emoji qui sopra per vedere i dettagli dei caratteri.

Come usare

  1. Inserisci un'emoji o un punto di codice: incolla un carattere emoji o digita il suo punto di codice Unicode (per es. U+1F600).
  2. Vedi tutte le rappresentazioni: lo strumento mostra il codice decimale, il valore hex, l'entità HTML, l'escape CSS, i byte UTF-8 e la sequenza di escape JavaScript.
  3. Copia qualsiasi formato: clicca su un risultato per copiarlo all'istante e usarlo in HTML, CSS o JavaScript.

Perché usare il convertitore Emoji Unicode?

Le emoji sono codificate in punti di codice Unicode, ma ogni sistema usa un formato diverso. L'HTML ha bisogno di entità 😀 o 😀. Gli pseudo-elementi CSS hanno bisogno della forma con escape \1F600. Le stringhe JavaScript hanno bisogno di \u{1F600}. Trovarli a mano è noioso, questo strumento genera ogni formato all'istante da un semplice input emoji. Sviluppatori, designer e creatori di contenuti lo usano per integrare emoji in modo sicuro nel codice dove il copia-incolla di caratteri grezzi può causare problemi di codifica.

Formati di uscita supportati

Una breve storia delle emoji, e le parti che tutti sbagliano

La storia delle origini più ripetuta attribuisce a Shigetaka Kurita di NTT DoCoMo la creazione della «prima emoji» nel 1998-1999. Quella storia è vera ma incompleta. Due sviluppi precedenti a Kurita meritano una menzione:

Come le emoji sono arrivate nel resto del mondo

Per un decennio dopo il set di Kurita, le emoji furono un fenomeno degli operatori giapponesi, con tre set di fornitori in competizione e incompatibili (DoCoMo, KDDI, SoftBank). Il passaggio avvenne in tre fasi:

Il lavoro di standardizzazione dell'Unicode Consortium procedette in parallelo. Ottobre 2010, Unicode 6.0 fu la prima versione dello standard ad aggiungere le emoji come set riconosciuto, contribuendo con circa 722 emoji dall'unione dei set degli operatori giapponesi. Agosto 2014, Unicode Technical Report #51 fu pubblicato (in seguito promosso a UTS #51 a maggio 2017), la specifica formale di come le emoji vengono codificate, messe in sequenza e presentate.

Perché la maggior parte dei code point delle emoji si trova sopra U+FFFF

Unicode organizza ogni carattere in 17 «piani» di 65.536 code point ciascuno. Il Piano 0 è il Basic Multilingual Plane (BMP), da U+0000 a U+FFFF. Qui vive la maggior parte della lingua scritta di tutti i giorni. I Piani 1-16 sono piani supplementari (informalmente «piani astrali»), da U+10000 a U+10FFFF. La stragrande maggioranza delle emoji vive nel Piano 1, il Supplementary Multilingual Plane, in particolare in blocchi come Emoticons (U+1F600-U+1F64F), Miscellaneous Symbols and Pictographs (U+1F300-U+1F5FF), Transport and Map Symbols (U+1F680-U+1F6FF) e Supplemental Symbols and Pictographs (U+1F900-U+1F9FF). Il più recente blocco Symbols and Pictographs Extended-A si trova a U+1FA70-U+1FAFF.

Questo è importante per gli sviluppatori a causa di UTF-16. UTF-16 codifica i code point del BMP come una singola unità a 16 bit, ma i code point supplementari devono essere codificati come una coppia surrogata: due unità a 16 bit, una dall'intervallo dei surrogati alti U+D800-U+DBFF e una dall'intervallo dei surrogati bassi U+DC00-U+DFFF. Il tipo stringa di JavaScript è internamente UTF-16, ed è per questo che "😀".length restituisce 2 invece di 1: il motore conta le unità di codice, non i code point. Il codice JS moderno usa Array.from("😀").length o l'API Intl.Segmenter per contare correttamente i cluster di grafemi.

UTF-8 gestisce la stessa emoji come una sequenza di 4 byte. Il carattere 😀 (U+1F600) è F0 9F 98 80 in UTF-8. È per questo che il vecchio charset utf8 di MySQL (che in realtà è utf8mb3, limitato a sequenze di 3 byte) non può memorizzare le emoji: serve utf8mb4. MySQL 8.0 ha reso utf8mb4 il valore predefinito, ma i database legacy continuano a non riuscire a memorizzare le emoji e troncano o danno errore in silenzio a seconda della modalità SQL. È un bug frequente nel mondo reale.

I selettori di variazione, perché lo stesso cuore può apparire nero o rosso

Una manciata di caratteri Unicode ha una «doppia personalità»: possono apparire come un semplice simbolo di testo monocromatico oppure come un'emoji colorata, a seconda del contesto. Due selettori di presentazione furono aggiunti a Unicode 3.2 (marzo 2002): U+FE0F (Variation Selector-16, VS16) richiede la presentazione emoji, e U+FE0E (VS15) richiede la presentazione testuale. Esempio: (U+2764, «Heavy Black Heart») è un simbolo predefinito come testo; ❤️ (U+2764 U+FE0F) è il cuore rosso in presentazione emoji che la maggior parte delle app rende a colori. Lo stesso code point con e senza VS16 appare completamente diverso.

Un famoso esempio correlato è il sole. U+2600 «Black Sun With Rays» è predefinito come monocromatico in stile testo; aggiungendo VS16 (U+2600 U+FE0F) si ottiene il colorato ☀️. Al contrario, U+1F31E «Sun With Face» è un code point separato aggiunto in Unicode 6.0 (ottobre 2010), con presentazione emoji predefinita, e viene reso come il sorridente 🌞 senza bisogno di alcun selettore. Due code point diversi, due storie diverse, entrambi chiamati informalmente «l'emoji del sole».

I modificatori del tono della pelle e la scala Fitzpatrick

In Unicode 8.0 (rilasciato il 17 giugno 2015) lo standard aggiunse cinque caratteri modificatori che regolano il tono della pelle di qualsiasi emoji che raffiguri una persona. I modificatori si basano sulla scala Fitzpatrick, una classificazione dermatologica sviluppata nel 1975 dal dermatologo americano Thomas B. Fitzpatrick a Harvard. La scala medica ha sei tipi (da I a VI). Ai fini delle emoji, i tipi I e II vengono uniti in un unico modificatore, lasciando cinque modificatori emoji:

L'uso è posizionale: il modificatore viene immediatamente dopo un'emoji umana supportata. Per esempio, 👋 (U+1F44B, mano che saluta) + U+1F3FD produce 👋🏽, il saluto dal tono medio. Se il font di un destinatario non supporta una particolare combinazione base+modificatore, il modificatore viene reso come un quadrato marrone separato, una modalità di errore comune sui sistemi più vecchi.

Le sequenze Zero-Width Joiner) come sono costruite le emoji composte

Lo Zero-Width Joiner, code point U+200D, è il carattere «colla» che permette a più emoji di combinarsi in un unico glifo composito quando il renderer riconosce la sequenza. Lo ZWJ è invisibile e non ha larghezza: esiste unicamente per segnalare al motore di rendering che i caratteri circostanti devono fondersi. Tre schemi dominano:

Usato molto in Unicode 15.1 (rilasciato il 12 settembre 2023): in 15.1 furono aggiunte 118 nuove emoji, di cui 108 erano varianti direzionali di emoji esistenti (persone rivolte a destra anziché a sinistra come impostazione predefinita). Cosa cruciale, 15.1 non aggiunse nessun nuovo code point di base: ogni nuova emoji era una sequenza costruita a partire da componenti esistenti.

Keycap, indicatori regionali e il meccanismo delle bandiere

Sequenze keycap. Un'emoji keycap come 1️⃣ è costruita a partire da tre code point: una cifra (U+0031 = «1»), il VS16 (U+FE0F) e il carattere Combining Enclosing Keycap U+20E3. Il keycap combinante fu approvato come parte di Unicode 3.0 nel 1999. L'insieme completo delle emoji keycap copre 0-9 più # e *. La sequenza di tre caratteri manda in tilt di continuo i controlli ingenui di .length.

Coppie di indicatori regionali (bandiere). Unicode non codifica le bandiere nazionali come caratteri singoli. Definisce invece 26 Regional Indicator Symbols, code point da U+1F1E6 a U+1F1FF, ognuno corrispondente a una lettera latina dalla A alla Z. Una bandiera è una coppia di indicatori regionali che compone un codice paese ISO 3166-1 alpha-2. La bandiera francese 🇫🇷 è U+1F1EB U+1F1F7: le lettere indicatrici regionali F e R. Delle 26 × 26 = 676 coppie possibili, solo circa 270 corrispondono a codici paese ISO validi; le restanti vengono rese come due simboli di lettera sulla maggior parte delle piattaforme.

Le versioni recenti delle emoji, in breve

I design dei fornitori, stesso code point, grafica diversa

Unicode standardizza il significato e il code point, mai la grafica. Ogni piattaforma distribuisce il proprio font di emoji, e le differenze visive sono abbastanza reali da aver causato fraintendimenti documentati in studi accademici (Hecht et al., CSCW 2018, sull'interpretazione errata delle emoji multipiattaforma). I font principali:

Quando il font di un dispositivo non ha un glifo per un particolare code point o sequenza, i browser e i sistemi operativi mostrano un rettangolo vuoto, comunemente chiamato tofu. Il tofu è il segnale più forte possibile che il dispositivo del destinatario è più vecchio di quello del mittente. Le nuove emoji impiegano di solito dai sei ai diciotto mesi per propagarsi da un rilascio Unicode a tutte le principali piattaforme.

Accessibilità, cosa dovrebbero sapere gli autori di contenuti

Gli screen reader moderni (NVDA, JAWS, VoiceOver, TalkBack) leggono ad alta voce il nome breve CLDR di ogni emoji dall'Unicode Common Locale Data Repository, per esempio «faccina sorridente» per 😀, «famiglia: uomo, donna, bambina, bambino» per 👨‍👩‍👧‍👦. L'Unicode CLDR mantiene nomi brevi e parole chiave ufficiali in più di 90 lingue, ed è ciò che usa ogni grande screen reader sulle piattaforme Apple e Microsoft. La tecnica WCAG H86 raccomanda di racchiudere le emoji significative in <span role="img" aria-label="thumbs up">👍</span>; le emoji decorative dovrebbero essere nascoste con aria-hidden="true". Tre insidie: le emoji ripetute diventano prolisse (😂😂😂😂😂 viene letto come «faccina con lacrime di gioia» cinque volte); le emoticon in stile testo (:)) vengono lette come «due punti parentesi chiusa» senza alcun nome breve Unicode; i modificatori del tono della pelle vengono letti ad alta voce (👋🏽 viene letto come «mano che saluta: tono della pelle medio», informativo ma più lento).

Emojipedia e l'infrastruttura culturale

Emojipedia è stata fondata nel 2013 da Jeremy Burge, un designer australiano che registrò il dominio per un capriccio dopo una cena di compleanno. È ora il sito di riferimento di fatto per i significati delle emoji, i design dei fornitori e la copertura dei rilasci, con all'incirca 590 milioni di visualizzazioni di pagina nel 2021. Burge faceva parte dell'Unicode Emoji Subcommittee, ricoprì il ruolo di «Chief Emoji Officer» di Emojipedia fino al 2022 e creò il World Emoji Day (17 luglio): scelto perché l'emoji del calendario di Apple 📅 mostra la data del 17 luglio, a sua volta un riferimento alla data di lancio originale di iCal di Apple al Macworld Expo del 2002. Emojipedia è stata acquisita da Zedge, Inc. (NYSE: ZDGE) ad agosto 2021 e continua a operare con lo stesso marchio. L'Unicode Emoji Subcommittee, che valuta le proposte di nuove emoji, è attualmente presieduto da Jennifer Daniel, ex responsabile del design di Google, la prima donna a presiedere il sottocomitato.

Numeri di riferimento rapido

Strumenti correlati

Selettore emoji gratuito Codificatore / Decodificatore entità HTML Traduttore di codice Morse Contatore di caratteri