Some emojis (e.g. ☁) have two unicode, u'\u2601' and u'\u2601\ufe0f'. What does u'\ufe0f' mean? Is it the same if I delete it?

人走茶凉 提交于 2019-11-30 21:50:11

问题


I'm writing a python program to judge emoji with a collected emoji unicode set. During the test, I found that one emoji,take as an example, has two unicode, u'\u2601' and u'\u2601\ufe0f', what does \ufe0f mean? Is it the same if I delete it?


回答1:


That's the Variant Form, which provides more information for those displays, that are capable of displaying with colour and other things.

This chart gives you the difference between FE0F and FE0E:

You could consider that the FE0E version is the unicode text version, and the FE0F version is with graphics (those which are capable will display graphically), which gracefully degrades to text version, when graphical display is not available.




回答2:


In Unicode the value U+FE0F is called a variation selector. The variation selector in the case of emoji is to tell the system rendering the character how it should treat the value. That is, whether it should be treated as text, or as an image which could have additional properties, like color or animation.

For emoji there are two different variation selectors that can be applied, U+FE0E and U+FE0F. U+FE0E specifies that the emoji should be presented like text. U+FE0F specifies that it should be presented as an image, with color and possible animation.

Without the variation selector the character still renders fine, (just look at the page source at this character: ☁) but there's no additional information about presentation.



来源:https://stackoverflow.com/questions/38100329/some-emojis-e-g-have-two-unicode-u-u2601-and-u-u2601-ufe0f-what-does

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!