ios emoji表情的保存

来源:互联网 发布:日本中国夏令营知乎 编辑:程序博客网 时间:2024/05/16 11:31
    • 首页
    • 归档
    • 留言
    • 关于

emoji表情的保存

 发表于 2015-08-12

文章目录
  1. 1. 1 All First
  2. 2. 2 当初
  3. 3. 3 搜索后遇到的坑
  4. 4. 4 github是个好东西
  5. 5. 4 保存表情为png图片
  6. 6. 5 待续
  7. 7. 附件

1 All First

最近三天一直在折腾emoji表情存数据库的问题.到今天为止,总算有个比较成熟的方案了.本文会列举使用过的方法.

2 当初

我们是给手机端做api接口,在这之前,手机端跟另一服务器端搞过emoji的问题,貌似采取的方案是手机端把所有聊天内容base64加密.这样是方便,但是看不到内容,做关键字过滤的话,需要解码.

3 搜索后遇到的坑

api刚开始是使用base64的方案,临近发新版本一个周,决定研究一下emoji表情的保存问题.百度谷歌,搜emoji表情保存,大部分的文章是让改数据库编码,偶尔遇到一篇文章,说采用替换的方式.这跟我最初的想法不谋而合.

4 github是个好东西

在github上搜到的第一个是
https://github.com/iamcal/php-emoji/blob/master/emoji.php,
恰好api使用的是php,于是把这个文件里的unified_to_html截出来,html代码改成表情名字,使用php的str_replace()方法第一个替换方案出现了,这个方案可以替换740个表情.
第二天,找到了这个
https://github.com/vdurmont/emoji-java
看介绍,知道是使用的
https://github.com/github/gemoji/tree/master/db/emoji.json
于是呼,json文件搞到php上,改改改,第二个方案出来了,这个方案可替换800多个表情.
本来打算就此结束,第三天,找来测试人员测试表情,发现json文件里有几个表情替换不了.继续在github上游荡.忘记在哪个项目里点到了这个网站:
http://www.emoji-cheat-sheet.com/,
看到底部的github项目:
https://github.com/arvida/emoji-cheat-sheet.com
点进去一看,业界良心啊.在项目的介绍页,明确介绍了几个项目:(省略部分)

  • Objective-C – https://github.com/diy/nsstringemojize
  • Java - https://github.com/pepibumur/emojize
  • Python - https://github.com/carpedm20/emoji

上面这三个项目里,都在文件里写死表情的替换字典了.比如
https://github.com/diy/NSStringEmojize/blob/master/NSStringEmojize/emojis.h
https://github.com/pepibumur/emojize/blob/master/src/com/ppi/emoji/emojiParser.java
https://github.com/carpedm20/emoji/blob/master/emoji/unicode_codes.py
特别是第三个python的,里面表情有1200多个.并且
https://github.com/carpedm20/emoji/blob/master/utils/get-codes-from-unicode-consortium.py
还可以从网站上更新表情字典.(python3写的),我做了一个python2.7的修改版,建议在linux下,网速好,内存512+的机器上跑

4 保存表情为png图片

改进了上面提到的脚本(好吧,我是在更新这篇文章),保存http://www.unicode.org/emoji/charts/full-emoji-list.html网站里的IOS版的表情为图片,并保证图片的名字跟表情字典的占位符一致
附件中会给源码

5 待续

我相信没有完美的代码.也许以后还会发现更好的方案

附件

上文提到的python2.7的脚本

改进的脚本,可以把表情保存成png图片

爬好的表情包:

emoji的表情+字典,表情只存了ios版的.7z

 python

分类

  • linux1
  • nginx1
  • php1
  • python4
  • tomcat1
  • vps1

标签

  • python4
  • vps3
  • linux2
  • php2
  • 脚本2
  • tomcat1
  • nginx1

新浪微博

RSS 订阅
0 0
原创粉丝点击