Unicode 为什么红心表情符号需要两个代码点,而其他彩色心形符号需要一个?

Unicode 为什么红心表情符号需要两个代码点,而其他彩色心形符号需要一个?,unicode,emoji,codepoint,Unicode,Emoji,Codepoint,看来红心表情符号(❤️) “\u2764\uFE0F”需要两个Unicode代码点,后面紧跟着一个。但是,出于历史原因,蓝色。最初,只有U+2764重黑心,支持Emojis的第一个应用程序决定将其呈现为红心。这些早期应用程序总是将U+2764呈现为表情符号。后来意识到这是一个坏主意d表情符号的变体选择器是标准化的。当添加额外的心形表情符号时,不需要另一个红色心形符号,因此省略了它。相反,在表情符号出现之前的几十年,Unicode中添加了一个单独的黑心形表情符号U+1F5A4重黑心形。当表情符号被

看来红心表情符号(❤️) “\u2764\uFE0F”需要两个Unicode代码点,后面紧跟着一个。但是,出于历史原因,蓝色。最初,只有U+2764重黑心,支持Emojis的第一个应用程序决定将其呈现为红心。这些早期应用程序总是将U+2764呈现为表情符号。后来意识到这是一个坏主意d表情符号的变体选择器是标准化的。当添加额外的心形表情符号时,不需要另一个红色心形符号,因此省略了它。相反,在表情符号出现之前的几十年,Unicode中添加了一个单独的黑心形表情符号U+1F5A4重黑心形。当表情符号被合并到Unicode 6中时,一些已经存在的字符只是作为表情符号重复使用,以避免不必要的重复。后来,为也映射到非表情符号字符集的字符定义了变体序列,以便更好地控制它们的显示方式。例如,U+2744❄ 雪花最初来自Zapf Dingbats(我相信),但后来也制作了表情符号。因此,如果您想强制显示原始文本样式,可以使用变体选择器-15(导致❄︎), 如果您想强制使用较新的表情符号样式显示,可以使用变体选择器-16(导致❄️).

然而,请注意,目前并不是很多平台都能正确地支持这些变体序列。也不是所有平台都能在使用表情键盘时自动应用变体选择器。理论上❤ 及❄ (和)在没有VS16的情况下默认显示为文本样式,但许多应用程序也忽略了这一点


6月份的下一次Unicode更新将添加更多内容。

注意:Zapf Dingbats(字体)≠ Dingbats(Unicode部分)非常确定其他颜色的心形符号——好吧,大多数,也就是说,不是黑色的心形符号——出现在第一轮的表情符号中,但只有2764被定义为对现有符号的解释(至少,这是真的)