¿Por qué aparecen los mismos caracteres con una ‘presentación de texto’ en algunas situaciones y una ‘presentación de emoji’ en otras?
Hay un 'estilo de texto' y un 'estilo emoji' para U+25B6 BLACK RIGHT-POINTING TRIANGLE (▶)
. El estilo que obtenga depende del estilo que tenga la fuente que esté usando actualmente. Por ejemplo, la fuente Apple Color Emoji tiene un glifo "estilo emoji" para U+25B6 BLACK RIGHT-POINTING TRIANGLE
mientras que la fuente Lucida Grande tiene un glifo de 'estilo de texto' para U+25B6 BLACK RIGHT-POINTING TRIANGLE
. Esto está bien en un editor de texto, donde tienes control sobre cualquier fuente que estés usando para cada personaje, pero no en contextos donde no lo estés.
¿Cómo puedo especificar si quiero o no la ‘presentación de texto’ o la ‘presentación de emoji’ para un punto de código en contextos donde no tengo control sobre la fuente?
El Consorcio de Unicode en realidad proporcionó una solución para este problema en Unicode 6.1, que se detalla en este informe técnico de Unicode .
Esencialmente, han designado dos puntos de código como selectores de variación de emoji: U+FE0E VARIATION SELECTOR-15
(para una presentación de texto) y U+FE0F VARIATION SELECTOR-16
(para una presentación de emoji).
Déjame explicarte cómo funcionan. Cada vez que ingrese uno de esos dos selectores de variación en un campo de texto (ya sea a través de copiar y pegar u otro medio), el sistema de procesamiento de texto de su sistema operativo, cumple con el estándar de Unicode, v6.1 + : Cambiará el glifo (a través de sustitución de fuente , si es necesario) para el carácter que precede inmediatamente al selector de variación que acaba de ingresar para una que coincida con 'estilo de texto' o 'estilo emoji' (según el selector de variación que ingresó después del emoji).
Aquí hay una demostración:
▶ ︎ (U+25B6 U+FE0E)
▶ ️ (U+25B6 U+FE0F)
Para las personas que ven esta página en sistemas operativos más antiguos, he incluido algunas imágenes a continuación que muestran el comportamiento en un cuadro de texto normal en OS X v10.11 El Capitán.
La fuente del sistema en OS X v10.11 (que es San Francisco ), no tiene ningún glifo para U+25B6 BLACK RIGHT-POINTING TRIANGLE
, por lo que el sistema de procesamiento de texto de OS X realiza automáticamente la sustitución de fuentes y termina usando la fuente Lucida Grande UI , que tiene un glifo de 'estilo de texto' para U+25B6
:
ElusodeU+FE0EVARIATIONSELECTOR-15
inmediatamentedespuésloobligaaser"estilo de texto", por lo que el resultado es el mismo:
AlusarU+FE0FVARIATIONSELECTOR-16
inmediatamentedespués,ensulugar,elsistemaderenderizadodetextodeOSXusaunafuenteconunglifo'estiloemoji'paraU+25B6BLACKRIGHT-POINTINGTRIANGLE
,queeslafuenteAppleColorEmoji:
(Paraloscuriosos,lascapturasdepantallamuestranlautilidadindispensableDividiren UnicodeChecker ).