Windows Phone Emoji
今天基于项目的需要,研究了一下windows phone 8里面的Emoji实现。如果大家用过wp版本的微信或者qq,相比一定对它里面的表情符号影像深刻吧!是的,只要你细看一下,其实在微信里面包括两种表情符号,一种是系统自带的emoji,另一种就是微信自己加上去的。对于系统自带的我们稍后来说,让我们先看一下微信是如何自定义表情的呢?其实很简单,它只要在定义家口的时候约定一张对应表格,比如“微笑”对应一个编码,然后再对应一种图片。类似于这种:
,然后图片存放在本地,根据对应文本信息设计一套算法解析对应的图片。
那么系统里面自带的emoji,我们应该怎样去获取呢?让我们先来讲一件emoji的实现原理吧!其实不同的emoji都有单独的对应编码,比如在windows phone里面我们可以给一个textblock.text赋值为:\ud83d\ude01,它将显示一张笑脸,对应的常用emoji编码为:
switch (count)
{
case :
myRun1.Text = "\ud83d\ude01";
break;
case :
myRun1.Text = "\ud83d\ude02";
break;
case :
myRun1.Text = "\ud83d\ude03";
break;
case :
myRun1.Text = "\ud83d\ude04";
break;
case :
myRun1.Text = "\ud83d\ude05";
break;
case :
myRun1.Text = "\ud83d\ude06";
break;
case :
myRun1.Text = "\ud83d\ude07";
break;
case :
myRun1.Text = "\ud83d\ude08";
break;
}
如果你需要更多的话,可以将后面的16位编码一次加一,就可以变换成另一种emoji,这是对应的编码表格:
,当然wiki里面还有更多。其实如果利用keydown事件测试的话,我们发现按下不管哪个emoji的时候,产生的key都是unknow,这就是说我们不能通过获取key的方式,来显示对应的emoji,那么我们可以不可以直接接受textblock里面emoji输入之后的text呢?其实这是可以的,我们只要自己去摘取我们需要的emoji,然后显示出来就可以了。
Windows Phone Emoji的更多相关文章
- Windows 10 Emoji shortcuts
Windows 10 Emoji shortcuts Windows 10 Emoji 快捷方式 https://support.microsoft.com/en-us/windows/windows ...
- [图]Windows 10 Build 16273版本更新发布:新增可变式字体Bahnschrift
在经历了长达三周的等待之后,微软于今天终于面向Windows Insider项目的Fast通道用户发布了Windows 10 Build 16273版本更新.事实上,微软应该会在两周前就应该发布新版本 ...
- C# emoji 表情如何插入mssql
如何将emoji表情存入mssql 呢? 在Windows显示emoji(win7需要安装补丁) 在MAC完美支持 步骤就是将显示不出来的emoji UrlEncode=>进入MSsql 然后拿 ...
- Yarn vs npm:你需要知道的一切(转)
转载:https://zhuanlan.zhihu.com/p/23493436 原文链接:Yarn vs npm: Everything You Need to Know Facebook.Goog ...
- Windows新终端中玩转ASCII和Emoji游戏的正确姿势
Windows新终端中玩转ASCII和Emoji游戏的正确姿势 前一段时间,我搬运了几个Windows Terminal中玩游戏的视频,详情请看 发布在即!来一睹官方团队如何玩转 Windows Te ...
- windows中mysql5.7保存emoji表情
1.找到my.ini文件,修改一下配置: [client] default-character-set=utf8mb4 [mysqld] character-set-client-handshake ...
- 背水一战 Windows 10 (31) - 控件(按钮类): ButtonBase, Button, HyperlinkButton, RepeatButton, ToggleButton, AppBarButton, AppBarToggleButton
[源码下载] 背水一战 Windows 10 (31) - 控件(按钮类): ButtonBase, Button, HyperlinkButton, RepeatButton, ToggleButt ...
- 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox
[源码下载] 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) T ...
- 背水一战 Windows 10 (27) - 控件(文本类): TextBlock
[源码下载] 背水一战 Windows 10 (27) - 控件(文本类): TextBlock 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) TextBlock 示例 ...
随机推荐
- Ugly Window 【acm题】
话说好久没有碰acm题目了.............................. 看到Ugly Window这道题目,没有多想,就直接先找到字母的连续长度和连续高度,并统计该字母的总个数,然后用 ...
- java(POI):基于模版的Excel导出功能,局部列写保护总结
需求描述: 1.导出的Excel中部分列包含有下拉列表,并没有尝试过用代码实现这种功能,个人感觉比较棘手,故采用了模版的形式,直接导出数据到已经创建好的Excel模版中 2.Excel的第一列需要写保 ...
- CSS选择器,CSS3选择器
CSS选择器 ------->CSS选择器优先级 1>通配符选择器(CSS2) 选择所有元素,所有浏览器都支持. *{ margin:0; padding:o; } 2>元素选择器( ...
- mysql时间日期相加相减实现
分享篇mysql中日期的一些操作,就是我们常常会用到的mysql时间日期的相加或者相减的了,这个mysql也自己带了函数,有需要的朋友可以参考一下. 最简单的方法 select TO_DAYS(str ...
- STL容器迭代器失效分析
连续内存序列容器(vector, string, deque) 对于连续内存序列STL容器,例如vector,string,deque,删除当前iterator会使得后面所有的iterator都失效, ...
- WP8_UTF8 to GB2312转码 (url网址中带中文字符的处理)
直接使用例如:http://www.abc.php?name=中文符 ,客户端调用,在服务端修改后,会出现乱码, 而windows phone 又不能直接支持gb2312, 经过大量分析和验证,发现 ...
- angular directive指令的复用
“指令之之所以要定义成指令就是为了复用!” 指令一定是可以用在不同的controller里面的,为了在不同的controller去使用它,我们一定要给指定的配置项一个指令.这样才能跟外面的控制器进行交 ...
- 探秘Java中String、StringBuilder以及StringBuffer
探秘Java中String.StringBuilder以及StringBuffer 相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问 到的地方,今天就来和大家一起学习 ...
- mysql中union与union all的区别
当查询表结构完全相同的多张表的数据时: 1.当查询条件完全相同且不包括主键,此时用union查询会过滤掉查询出的重复的记录,及漏查记录:使用union all进行查询,则会查出所有的符合条件的记录,保 ...
- linux环境配置
一.JDK安装 1.通过xftp工具把jdk-8u60-linux-x64.gz上传到linux 2.解压JDK命令tar -xzf jdk-8u60-linux-x64.gz 3.linux配置环境 ...