web-dev-qa-db-ja.com

ブラックベリーとAndroidアプリの絵文字(絵文字))。サポートする方法は?

Whatsappはそれをどのようにサポートするのでしょうか。絵文字はネイティブでサポートされているため、iPhoneでも使用できます。私はbbもAndroid=も開発していませんが、コーダーを支援する必要があります。

bbの人から、フォントをプロジェクトリソース(ttf)として追加できると言われましたが、絵文字は色付きのグラフィックなので、ttfを作成できるかどうかわかりません。フォントについても何も知りません。

ご覧のとおり、私の知識はこれについては非常に大きなものです。正しい調査方法を示すヒントが必要です。

ありがとうございます。

9
Jorge

Androidでは、チュートリアルi ここにありますビットマップフォント を作成できます。その後、すべての絵文字をそのフォントに埋め込むことができます。

BlackBerryでこれを行うには、 FontFamily クラスを使用できます。
これが チュートリアル で、これがどのように機能するかを説明しています。

楽しんで! :-)

17
Mark Mooibroek

私の経験から、ほとんどの絵文字(絵文字)はフォントを使用せず、ビットマップグラフィックスです(たとえば、デフォルトの絵文字Androidテキストエディター)。フォントを使用することにはいくつかの欠点があります:

  • 文字a、b、c、dなどを絵文字にしたとすると、ユーザーは絵文字に切り替えないと、それらの文字を含むメッセージを読み書きできなくなります。
  • フォントは、テキストをさまざまなサイズ/スタイルで表示するための多くの情報を含んでいるため、一般的にかなり大きい

ビットマップグラフィックスを使用すると、標準のデバイスフォントを使用して絵文字の周囲のテキストを表示しながら、さまざまなデバイスで同じ絵文字を簡単に使用できます。

表示している文字列を解析し、絵文字を見つけて、画像に置き換える必要があります。

Androidたとえば、次のようにしてこれを実現します。

  1. 文字列からすべての絵文字の出現を検索します(正規表現はこれを十分簡単に​​行うことができます)
  2. すべての絵文字を文字列_<img src="emoticon.png" />_に置き換えます(ただし、絵文字のタイプに基づいてemoticon.pngを変更します)。
  3. String myHtmlString = Html.fromHtml(myEmoticonString, myImageGetter, null);で文字列をHTMLに変換します
  4. 文字列をTextViewに表示するmyTextView.setText(myHtmlString)

ステップ3では、myImageGetterは_Html.ImageGetter_のインスタンスである必要があります。これは、文字列内の画像のsrc属性に基づいてグラフィック(ドローアブル)を返します(つまり、文字列ファイルを変換します)実際のグラフィックの名前)

他のプラットフォームでの手順は異なりますが、同じ基本的な方法(文字列の解析、絵文字の画像への置き換え)を使用できるはずです。

5
Joseph Earl

私が知っていることを教えてください、私は絵文字は知りませんが、それをググリングすることは、それが一連​​の顔文字、主に日本語のオリジンであると考えさせられました。それが本当である場合、フォントファイルを使用してカスタムフォントを作成するのが一般的であることを指摘したいと思います( ここ で示されています)。そして、そのフォントファイルにこれらの絵文字を埋め込み、使用できるようにする必要があります。

上記で提供したリンクはJ2ME用ですが、ロジックと設計は同様です。お役に立てれば。

0
omermuhammed