zoukankan      html  css  js  c++  java
  • Windows Phone Emoji

        今天基于项目的需要,研究了一下windows phone 8里面的Emoji实现。如果大家用过wp版本的微信或者qq,相比一定对它里面的表情符号影像深刻吧!是的,只要你细看一下,其实在微信里面包括两种表情符号,一种是系统自带的emoji,另一种就是微信自己加上去的。对于系统自带的我们稍后来说,让我们先看一下微信是如何自定义表情的呢?其实很简单,它只要在定义家口的时候约定一张对应表格,比如“微笑”对应一个编码,然后再对应一种图片。类似于这种:,然后图片存放在本地,根据对应文本信息设计一套算法解析对应的图片。

         那么系统里面自带的emoji,我们应该怎样去获取呢?让我们先来讲一件emoji的实现原理吧!其实不同的emoji都有单独的对应编码,比如在windows phone里面我们可以给一个textblock.text赋值为:ud83dude01,它将显示一张笑脸,对应的常用emoji编码为:

     switch (count)
                {
                    case 1:
                        myRun1.Text = "ud83dude01";
                        break;
                    case 2:
                        myRun1.Text = "ud83dude02";
                        break;
                    case 3:
                        myRun1.Text = "ud83dude03";
                        break;
                    case 4:
                        myRun1.Text = "ud83dude04";
                        break;
                    case 5:
                        myRun1.Text = "ud83dude05";
                        break;
                    case 6:
                        myRun1.Text = "ud83dude06";
                        break;
                    case 7:
                        myRun1.Text = "ud83dude07";
                        break;
                    case 8:
                        myRun1.Text = "ud83dude08";
                        break;
                }
    View Code

    如果你需要更多的话,可以将后面的16位编码一次加一,就可以变换成另一种emoji,这是对应的编码表格:,当然wiki里面还有更多。其实如果利用keydown事件测试的话,我们发现按下不管哪个emoji的时候,产生的key都是unknow,这就是说我们不能通过获取key的方式,来显示对应的emoji,那么我们可以不可以直接接受textblock里面emoji输入之后的text呢?其实这是可以的,我们只要自己去摘取我们需要的emoji,然后显示出来就可以了。

  • 相关阅读:
    Java中接口对象实现回调
    推荐算法之计算相似度
    mahout入门实例2-Mahout单机开发环境介绍(参考粉丝日志)
    mahout入门实例-基于 Apache Mahout 构建社会化推荐引擎-实战(参考IBM)
    windows下gvim使用及常见命令
    一道C语言的问题(转)
    android开发手记一
    数据结构之有关图的算法(图的邻接表示法)
    Week of Code:GG
    HDU 5587:Array
  • 原文地址:https://www.cnblogs.com/xiaocai20091687/p/3641630.html
Copyright © 2011-2022 走看看