红心表情符号 (❤️)“\u2764\uFE0F”似乎需要两个 Unicode 代码点,具体来说 Heavy Black Heart随后是 Variation Selector 。然而,blue 💙 , green 💚 , yellow 💛 ,和purple 💜每个都有自己的单个代码点。
为什么红色如此不同?
最佳答案
由于历史原因。最初,只有 U+2764 HEAVY BLACK HEART,第一个支持表情符号的应用程序决定将其渲染为红心。这些早期的应用程序总是将 U+2764 呈现为表情符号。后来人们意识到这是一个坏主意,表情符号的变体选择器被标准化了。当添加额外的心形表情符号时,不需要另一个红心,因此被省略。相反,有一个单独的黑心表情符号 U+1F5A4 🖤。
理论上,应用程序可能要求将表情符号变体选择器也附加到其他心脏代码点。但将紫心勋章这样的角色渲染为非表情符号并没有多大意义。不过,它确实对《HEAVY BLACK HEART》产生了影响,它通常旨在渲染为原始的、普通的《Heavy Black Heart》角色。
关于unicode - 为什么红心表情符号需要两个代码点,而其他彩色心形表情符号需要一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42679712/