您的位置:首页 > 移动开发 > IOS开发

ios emoji表情的保存

2016-05-13 14:58 411 查看




laotan's blog

首页
归档
留言
关于

emoji表情的保存

By laotan
发表于 2015-08-12

文章目录

1. 1
All First
2. 2
当初
3. 3
搜索后遇到的坑
4. 4
github是个好东西
5. 4
保存表情为png图片
6. 5
待续
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
phppython



上一篇:

python的virtualEnv+pycharm的配置
下一篇:

服务器部署脚本(python)



分类

linux1
nginx1
php1
python4
tomcat1
vps1

标签

python4
vps3
linux2
php2
脚本2
tomcat1
nginx1

新浪微博

友情链接

谷哥
www.ilaotan.com

RSS 订阅

Hello ,我是老谭

这是我的博客,如果你来过,请留下脚印

Powered by hexo and Theme by Jacman © 2015 laotan

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: