9

我想知道whatsapp如何为此提供支持。我可以在 iPhone 上使用表情符号,因为它是原生支持的。我既不是为 bb 也不是为 android 开发,但我需要帮助编码人员处理这些东西。

bb 的人告诉我他可以添加字体作为项目资源(ttf),但是由于 emoji 是彩色图形,我不确定我是否可以创建一个 ttf。我也对字体一无所知。

如您所见,我对此一无所知。我只需要一些提示,为我指明正确的研究方法。

谢谢!

4

3 回答 3

17

Android上,您可以使用我在此处找到的教程制作位图字体。然后你可以将你所有的表情符号嵌入到该字体中。

要在BlackBerry上进行此操作,您可以使用FontFamily类。
这是一个解释其工作原理的教程。

玩得开心!:-)

于 2011-04-18T05:12:53.130 回答
5

根据我的经验,大多数表情(表情符号)不使用字体,而是位图图形(例如默认 Android 文本编辑器中的表情)。使用字体有几个缺点:

  • 假设您将字符 a、b、c、d 等制作成表情符号 - 用户将无法阅读/发送带有这些字符的消息,而无需将它们转换为表情符号。
  • 字体通常很大,因为它们包含大量用于以不同大小/样式显示文本的信息

使用位图图形将允许您在各种设备上轻松使用相同的表情符号,同时使用标准设备字体和表情符号周围的文本。

您将不得不解析您正在显示的字符串,找到表情符号,并将它们替换为图像。

例如,在 Android 上,您可以通过以下方式完成此操作:

  1. 搜索所有表情符号出现的字符串(正则表达式可以很容易地做到这一点)
  2. 用字符串替换所有表情符号<img src="emoticon.png" />(尽管根据表情符号的类型更改 emoticon.png)
  3. 将字符串转换为 HTMLString myHtmlString = Html.fromHtml(myEmoticonString, myImageGetter, null);
  4. 在 TextView 中显示字符串myTextView.setText(myHtmlString)

在步骤 3myImageGetter中需要是一个实例,Html.ImageGetter它根据字符串中图像的属性返回一个图形(可绘制)src(即它将字符串文件名转换为实际图形)

其他平台上的步骤会有所不同,但您应该能够使用相同的基本方法(解析字符串,用图像替换表情符号)。

于 2011-04-23T11:46:58.430 回答
0

让我说说我所知道的,我不知道表情符号,但谷歌搜索它让我认为它是一组表情符号,主要来自日本。如果这是真的,我想指出使用字体文件创建自定义字体是很常见的(如图所示。在该字体文件中,您应该能够嵌入这些表情符号并使用它们。

我上面提供的链接是针对 J2ME 的,但逻辑和设计应该是相似的。希望这可以帮助。

于 2011-04-18T04:44:30.240 回答