ドコモのUnicode絵文字対応表1(iモード絵文字にあるもの)

  • (たぶん)ドコモiPhoneの登場にともなって、ドコモのサーバがUnicode絵文字に対応した。ドコモのケータイ宛にcharset=UTF-8Unicode絵文字を送ると、ドコモのサーバがドコモのShift_JISに変換する。
  • 「目覚まし時計」「メリーゴーランド」「ポーチ」「座席」については、ドコモはEmojiSources.txtとは異なる解釈を採り、わざわざテキストに置き換えている(備考欄の絵文字が、EmojiSources.txtのマッピングに従ったもの)。このうちU+1F3A0 CAROUSEL HORSEとU+1F45D POUCHはiモード絵文字を単独ソースとしてUnicodeに入ったものであり、既存のキャリア間の変換テーブルの影響を受けていないはずなのだが、「うちのはメリーゴーランドじゃなくて木馬、ポーチじゃなくて袋だ」ということだろうか。
続きを読む

iOS 7のメールアプリの絵文字トラブルまとめ

  • この項10月28日追記。iOS 7.0.3でSoftBank iPhoneのメールアプリの仕様が修正された。iOS 7.0.3にアップデートした場合、いちばん下の図(au→SoftBank)における2つの豆腐は、絵文字で表示される。
  • iOS 7のメールアプリでは(原因の多くはサーバ側にあるのだが)絵文字の表示におけるトラブルが多発している。これらの問題は、キャリアのメールアドレスを利用している場合に発生するので、ドコモ(@docomo.ne.jp)、au(@ezweb.ne.jp)、SoftBank(@i.softbank.jp)の組み合わせとトラブルの関係を、しくみも含めてまとめてみた*1
  • 受信側が@docomo.ne.jpで送信側が他のキャリアのアドレスである場合、絵文字は表示できない。iモード絵文字にない文字のほうが(フォールバックによってテキストとして)表示される可能性がある、という倒錯的なことになっている。なお、一部の絵文字は受信側・送信側ともに@docomo.ne.jpであっても表示できない。この問題については「ドコモiPhoneのspモードメールで送受信できない文字」を参照。




  • 受信側が@ezweb.ne.jpである場合は、比較的トラブルが少ない。ただし、(これはドコモ側の問題だが)送信側が@docomo.ne.jpだと、絵文字はすべて「〓」などに変換されてしまう。







  • 以上の問題については、基本的に「キャリアのメールアドレスを使わない」という方法以外の回避策はない。

*1:akane_nekoさんにご協力いただいてテストしました。ありがとうございます!

ドコモiPhoneのspモードメールで送受信できない文字

  • ドコモiPhoneのメールアプリでdocomo.ne.jpアドレスを使用している場合、相手の環境にかかわらず送信も受信もできない文字が存在する*1。絵文字以外については、BMPUnicodeの0面)外の文字がダメっぽい(下図)。たとえば「しかる」は「叱る」ではなく(改定常用漢字表の)「𠮟る」と書きたい人もいるかと思うが、それは化ける。


  • 絵文字の送受信の可否は、相手の環境に左右される。その問題については、前回のエントリで述べた。しかし今回挙げる絵文字(キャリアのケータイ絵文字をソースとしないもの)は、相手が誰であっても送信も受信もできない(下図)。


  • サーバ側の仕様がAndroid端末の制限に引きずられているのかもしれない。

*1:akane_nekoさんにご協力いただいてテストしました。ありがとうございます!

ドコモiPhoneのspモードにおける絵文字の送受信

  • ドコモiPhoneのメールアプリで@docomo.ne.jpを使った場合の絵文字について調べてみた*1。細かい話はいろいろあるし、すべての組み合わせについて検証したわけではないが、おおまかに言えば、下図のようなかんじだと思う。


  • 送られてきた絵文字の表示については、UTF-8Unicode絵文字は表示できるが*2、(キャリアのサーバが)「@docomo.ne.jp」というアドレスを見てドコモのShift_JISに変換して送ってきた絵文字は全滅。ドコモのケータイ→ドコモのiPhoneでもダメ。
  • ドコモiPhoneの@docomo.ne.jpアドレスから送信した絵文字については、(理由はわからないが)ドコモ以外の「ケータイのアドレス」宛の場合、すべて「〓」に変換される。

*1:akane_nekoさんにご協力いただいてテストしました。ありがとうございます!

*2:ただし、ケータイ絵文字をソースとしないUnicode絵文字はサーバで弾かれてしまうようだ。

iOS 7にしたら送信したメッセージが化けるようになった(直りました)

  • この項10月28日追記。iOS 7.0.3でSoftBank iPhoneのメールアプリの仕様が修正された。
  • iOS 7にしてから文字化けするようになった」という話には、知る限りにおいて2つのパターンがある。1つ目は「SoftBank iPhoneで受信したメールの絵文字が表示されない」というもの。その原因については、前回と前々回に述べた。2つ目は「送信したメールのすべての文字が相手先で化ける」というもの。今回は、こちらについて述べる。
  • この現象も、前回・前々回の話とつながっている。簡単に言うと、iOS 7のメールアプリは「SoftBank独自」の処理を行っていないように見える。このため、「これまでは(au iPhoneなどではcharset=CP932になるが)SoftBank iPhoneではcharset=Shift_JISになっていた」というケースで、charset=CP932になる。
  • 具体的には、たとえば「〜」を含むメールに返信した場合、charset=CP932となり、Android端末の標準的なメーラーでメッセージ全体が化ける(「→iPhoneのMailから送ったメッセージ全体が文字化け」のまとめ)。もちろんこれはau iPhoneでは以前からあった文字化けなのだけれど、それが免疫のないSoftBank iPhoneユーザに広がったということなのではないかと思う。対処法はリンク先に書いたとおり、署名に「♡」「⌘」「◉」などを入れてcharset=UTF-8に固定しておけばOK。

iOS 7のメールで「目がハート」が「狼」に化ける(直りました)

  • この項10月28日追記。iOS 7.0.3でSoftBank iPhoneのメールアプリの仕様が修正され、charset=Shift_JISのSoftBank絵文字が表示されるようになった。
  • 昨日のエントリの続き。iOS 6のSoftBank iPhoneでは、メールアプリはShift_JISSoftBank絵文字(下図、黄色字の領域)をテーブル変換していたが、iOS 7ではこのプロセスが落ちていて、0xF040以降は機械的Unicodeの私用領域の文字に変換されるようになった。このため、charset=Shift_JISで送られてきた絵文字は、大半が豆腐に化ける。


  • ただしiOSは、Unicodeの私用領域にSoftBank絵文字を収録している。このため、「機械的に私用領域の符号位置に変換された絵文字が、たまたま別の絵文字と衝突する」(つまり、別の絵文字に化ける)というケースもある。下図は、そのリスト。「目がハート」→「狼」とか、やばそうなのもある。

iOS 7の@i.softbank.jpアドレスで絵文字が表示できない(直りました)

  • この項10月28日追記。iOS 7.0.3でSoftBank iPhoneのメールアプリの仕様が修正され、charset=Shift_JISのSoftBank絵文字が表示されるようになった。
  • iOS 7のメールアプリで@i.softbank.jpアドレスを使用している場合、受信したメールに含まれる絵文字が表示されない(豆腐に化ける)というトラブルが発生している。iOS 7のメールアプリがcharset=Shift_JISSoftBank絵文字を解釈(デコード)せず、機械的に私用領域の文字に変換しているのが原因だと思われる。SoftBank iPhoneのメールは「SoftBank仕様」となっているが、iOS 7ではその「SoftBank仕様」の部分に問題があるようだ。
  • 解釈(デコード)の問題なので、iOS 6時代に受信したメールでも、絵文字が化ける。
  • iOS 7同士なら(iOS 7は@i.softbank.jpアドレス発でも絵文字入りのメールをcharset=UTF-8で送信するようなので)化けない。「iOS 6の@i.softbank.jpからiOS 7の@i.softbank.jpへ」または「ケータイからiOS 7の@i.softbank.jpへ」の絵文字が化ける。