当前位置

部分Emoji的变体:Text Style和Emoji Style

James Qi 在 2020年9月16日 - 17:36 提交

Emoji这东西普通人看起来就是表情符号、好玩,但背后的技术还是有些复杂的,前段时间给实习同学和同事们讲了《Unicode Emoji 技术标准 - 📱有趣交流背后的技术基础💻》,准备PPT的过程也是花费了不少时间精力,但搞通后就可以对EmojiAll网站开发中遇到的各种数据技术问题找到答案⁉。

去年刚接触Emoji数据,就发现有些Emoji有Text Style和Emoji Style,有时搞得容易混淆、迷糊😵。

参看下面的Unicode标准中的说明:

定义 Emoji 和 Text 展示序列

ED-8. text 展示选择器 — 字符 U+FE0E 变体选择器-15 (VS15), 用与要求一个emoji字符的text展示. (以前也称为text变体选择器.)
text_presentation_selector := \x{FE0E}
ED-8a. text 展示序列 — 一个变体序列,由一个emoji字符后面加一个text展示选择器组成.
text_presentation_sequence := emoji_character text_presentation_selector
只有在这个文件中列出的: emoji-variation-sequences.txt [emoji-data] 才是可用的 text 展示序列.
ED-9. emoji 展示选择器 — 字符 U+FE0F 变体选择器-16 (VS16), 用与要求一个emoji字符的emoji展示. (以前也称为emoji变体选择器.)
emoji_presentation_selector := \x{FE0F}
ED-9a. emoji 展示序列 — 一个变体序列,由一个emoji字符后面加一个emoji展示选择器组成.
emoji_presentation_sequence := emoji_character emoji_presentation_selector
只有在这个文件中列出的: emoji-variation-sequences.txt [emoji-data] 才是可用的 emoji 展示序列.

因为我们编撰的Emoji词典对每个Emoji都要写介绍描述和举例说明,工作量还是很大的,为了避免重复,一组三个Emoji的描述和举例只需要写一个,其它两个引用就可以了,并附加上还有其它两个变体的说明,这几天我花了好些时间与同事讨论、实现,一个繁体版的例子:

后面还要处理更复杂的Emoji修饰符序列和ZWJ零宽连接序列,以后再补充记录博客文章。

自由标签:

评论

你好,我没有太明白你提出的问题,上文中的定义text_presentation_selector就是U+FE0E,emoji_presentation_selector就是U+FE0F,包含text_presentation_selector属性和emoji_presentation_selector属性的emoji可以在这里看到最新的v14.0,更多关于text_presentation_selector和emoji_presentation_selector的官方解释,请看技术文档Unicode Emoji。不知道上面这些信息是否帮到了你?

James Qi / 祁劲松

添加新评论

Plain text

  • 不允许使用HTML标签。
  • 自动将网址与电子邮件地址转变为链接。
  • 自动断行和分段。