Cómo mostrar emoji char en HTML

Guardé la cara "saboreando deliciosos emoji" en la database, y la leí en php json_encode que muestra "uD83D \ uDE0B". Pero generalmente usamos una <img /> para replacela. sin embargo, normalmente encuentro este formatting '\ uE056' no "uD83D \ uDE0B", para replacelo con la image E056.png.

No sé cómo hacer que la image se convierta en 'uD83D \ uDE0B'. ¿Alguien sabe?

¿Cuál es la relación entre 'uD83D \ uDE0B' y '\ uE056', ambos representan emoji "saboreando deliciosa comida"?

El carácter Unicode U + 1F60B FACE SAVORING DELICIOUS FOOD es un llamado plano 1 carácter, lo que significa que su forma codificada UTF-16 consta de dos unidades de código de 16 bits, a saber, 0xD83D 0xDE0B. En general, los caracteres del Plano 1 causan problemas considerables porque muchos progtwigs no están preparados para manejarlos, y pocas fonts los contienen.

De acuerdo con http://www.fileformat.info/info/unicode/char/1f60b/fontsupport.htm este personaje en particular solo existe en las fonts DejaVu y en Symbola, pero las versiones de DejaVu que estoy usando no lo contienen.

En lugar de ocuparse de los problemas de las codificaciones (que no son tan difíciles, pero requieren información adicional), puede usar la reference de caracteres &#x1f608; en HTML Pero esto no resuelve el problema de la fuente. No sé acerca de las fonts de iPhone, pero en general en la navigation web, las probabilidades de que una computadora tenga cualquier fuente capaz de representar al personaje probablemente sean less del 1%. Por lo tanto, puede necesitar utilizar fonts descargables. El uso de una image es obviamente mucho más simple y mayormente más confiable.

U + E056 es un punto de código de uso privado, lo que significa que cualquiera puede llegar a un acuerdo sobre su significado con su hermano o consigo mismo, sin preguntarle a nadie más. Un diseñador de fonts puede asignarle un glifo.

IMPORTANTE: a partir de esta publicación, el único browser que no admite automáticamente emojis es Chrome.

PARA CROMO: Dependiendo del lenguaje del lado del server que esté usando, debería poder encontrar una biblioteca que convierta emojis por usted. Hace poco necesitaba resolver este problema con php y usé esta biblioteca:

https://github.com/iamcal/php-emoji

El creador esencialmente creó un sprite y ajusta el css de acuerdo con el unicode del emoji. No es bonito, pero por suerte él / ella hizo todo el trabajo de gruñido por ti. Si está utilizando un idioma diferente, debería poder encontrar algo similar.

¿Cómo pongo esas pequeñas cajas en un file php?

De la misma forma que cualquier otro carácter Unicode. Solo pégalos y asegúrate de save el file PHP y servir la página PHP como UTF-8.

Cuando lo pongo en un file php, se convierte en signos de interrogación y lo que no

Entonces tienes un problema de encoding. Resuelve los problemas con los caracteres Unicode que puedes ver correctamente primero, por ejemplo, ąαд ™ 日本, antes de preocuparte por el emoji.

Su file PHP debe savese como UTF-8; la página que produce debe ser servida como Content-Type: text/html;charset:UTF-8 (o con metalabel similar); la database MySQL debería utilizar una sorting UTF-8 para almacenar datos y PHP debería hablar con MySQL utilizando UTF-8.

Sin embargo. Incluso manejando todo correctamente así, las PC aún no mostrarán el emoji. Eso es porque:

No tienen fonts que incluyan forms para esos caracteres, y

emoji todavía están completamente sin estándar. Esos personajes que publicaste están en el área de uso privado de Unicode, lo que significa que no tienen ningún significado oficial en absoluto.

Cada networking en Japón utiliza códigos de caracteres diferentes para su emoji, asignados a diferentes áreas en el PUA. Por lo tanto, incluso en otro teléfono mobile, probablemente no muestre el carácter correcto, a less que pases las edades convirtiendo manualmente los códigos de emoji para diferentes networkinges. Supongo que los que publicó anteriormente son de SoftBank (iPhone?).

Hay una propuesta en curso liderada por Google y Apple para cotejar el emoji de las diferentes networkinges y darles un lugar estandarizado adecuado en Unicode. Hasta entonces, lograr que el emoji se muestre de forma coherente en las networkinges es un ejercicio de infelicidad. Mira la descripción del personaje del trabajo de estandarización para ver cuánto convertir tendrías que hacer.

Dios, odio el emoji. Todo ese dolor por una carga tan inútil de tweed.