emoji就是一段Unicode,但为什么在手机浏览器里它就有了色彩,像个图片一样呢?
对于字体,大部分认为程序中有一套字体字典,通过Unicode去匹配字体。
这样理解是有误的,因为Unicode匹配的不仅仅只有字体,不要把字体想成“字体”,应该想成是对象,Unicode只是对象的key,而value可以是任意。
value事先已经存放在了程序中,根据不同的value可以做不同逻辑处理与渲染,当然也可以是个图片,甚至另一个程序,只要程序事先做好了处理。
真正的区别在于emoji后来流行起来,甚至成为一个“标准”,谁不兼容谁就是跟大家过不去。所有浏览器,输入法,android,ios都兼容,让一些人以为emoji就是程序中本就通用的存在,其实各个平台都有自己的一套中间层逻辑,完全不同。
在开发过程中,我们经常使用配置文件,key&value形式,去做各种复杂但可能完全不同类型的处理。emoji也是同样的道理
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
因为字体文件,你甚至可以自己做一个字体文件。
android和ios的emoji长的也不一样。
你可以理解成宋体,微软雅黑。
然后也有一些产品的 emoji 是公司自研的。。可以明显看出和系统自带的不一样