如何在HTML中显示表情符号字符

jas*_*luo 23 iphone unicode emoticons ios emoji

我把脸上的"品尝美味的食物表情符号"保存到数据库中,并在显示"uD83D\uDE0B"的php json_encode中读取它.但通常我们使用一个<img />标签来替换它.但是,通常我只是发现这种格式'\ uE056'而不是"uD83D\uDE0B",用pic E056.png替换.

我不知道怎么把图片记录到'uD83D\uDE0B'.有人知道吗?

'uD83D\uDE0B'和'\ uE056'之间的关系是什么,它们都代表表情符号"品尝美味的食物"?

Juk*_*ela 9

Unicode字符U + 1F60B FACE SAVORING DELICIOUS FOOD是一个所谓的Plane 1字符,这意味着它的UTF-16编码形式由两个16位代码单元组成,即0xD83D 0xDE0B.通常,Plane 1字符会导致相当大的问题,因为很多程序都没有准备好处理它们,并且很少有字体包含它们.

根据http://www.fileformat.info/info/unicode/char/1f60b/fontsupport.htm这个特殊字符只存在于DejaVu字体和Symbola中,但我使用的DejaVu版本不包含它.

您可以&#x1f608;在HTML中使用字符引用,而不是处理编码问题(这些问题并不困难,但需要额外的信息).但这并不能解决字体问题.我不了解iPhone字体,但一般来说,在网页浏览中,具有任何能够渲染角色的字体的计算机的可能性可能不到1%.所以你可能需要使用可下载的字体.使用图像显然更简单,更可靠.

U + E056是一个私人使用代码点,这意味着任何人都可以与他的兄弟或他自己就其含义达成一致,而不会问别人的想法.字体设计者可以为其指定任何字形.

  • 然后更像85%.每台iOS设备,每台Mac,每台运行IE10或Chrome或Firefox的Windows机器,每台运行4.1或更高版本的Android设备,根据Google现在超过80%支持此功能 (5认同)

MCK*_*pur 0

如何将这些小框放入 php 文件中?

\n\n

与任何其他 Unicode 字符相同。只需粘贴它们并确保保存 PHP 文件并将 PHP 页面作为 UTF-8 提供。

\n\n

当我把它放入 php 文件时,它变成了问号什么的

\n\n

那么你就会遇到编码问题。首先使用您实际上可以正确看到的 Unicode 字符进行计算,例如 \xc4\x85\xce\xb1\xd0\xb4\xe2\x84\xa2\xe6\x97\xa5\xe6\x9c\xac,然后再担心表情符号。

\n\n

您的 PHP 文件应保存为 UTF-8;它生成的页面应该用作Content-Type: text/html;charset:UTF-8(或具有类似的元标记);MySQL 数据库应该使用 UTF-8 排序规则来存储数据,并且 PHP 应该使用 UTF-8 与 MySQL 通信。

\n\n

然而。即使这样正确处理一切,电脑仍然不会显示表情符号。那是因为:

\n\n

他们没有包含这些字符形状的字体,并且

\n\n

表情符号仍然完全不标准化。您发布的这些字符位于 Unicode 私人使用区域中,这意味着它们根本没有任何官方含义。

\n\n

日本的每个网络都使用不同的表情符号字符代码,映射到 PUA 中的不同区域。因此,即使在另一部手机上,它也可能无法显示正确的字符,除非您花费很长时间手动转换不同网络的表情符号代码。我猜你上面发布的那些来自软银(iPhone?)。

\n\n

Google 和 Apple 正在提出一项提案,旨在整理不同网络的表情符号,并在 Unicode 中为它们提供适当的标准化位置。在那之前,让表情符号在网络上一致显示是一件令人不快的事情。请参阅标准化工作中的字符概述,了解您需要进行多少转换。

\n\n

天哪,我讨厌表情符号。这么多无用的垃圾,所有的痛苦。

\n