ソフトバンクの絵文字

変換表もでき、入出力についても概ねできました。

現時点で次の変換が出来ます。

ドコモ→au/ウィルコム/イーモバイル/ソフトバンク
au→ドコモ/ウィルコム/イーモバイル/ソフトバンク
ウィルコム→ドコモ/au/イーモバイル/ソフトバンク
イーモバイル→ドコモ/au/ウィルコム/ソフトバンク
ソフトバンク→ドコモ/au/ウィルコム/イーモバイル

今月中に、対応バージョンを公開予定です。


絵文字変換


シフトJIS、UTF-8での入出力は他のキャリアと同様です。
ただ、シフトJISでの符号化方法が二種類あるので、処理が大変です。

2G(J-PHONE、Vodafone含む)は、変なエスケープシーケンスで絵文字を符号化します。
3Gでは、他のキャリアと同様に、外字領域でそのまま記述できます。

動作について確認していないのですが、入力は次のように動作するよう、実装してあります。

2G エスケープシーケンスのみ入力可能
3G エスケープシーケンスと外字で入力可能


歴史が長く、文字集合にも変遷があるため、現状、次のような符号名に対応しています。

/j-phone/3.0
/j-phone/4.0
/vodafone
/softbank2g
/softbank3g

/softbank または /sbm は、/softbank3g の別名としています。

J-PHONE時代にはVodafoneの絵文字はなく、VodafoneからはVodafoneの絵文字追加、softbank2gは現状維持、softbank3gで両方削除、という感じになっています。


シーケンスの特徴


誰が考えた仕様なのか定かではありませんが、ISO/IEC 2022を少々かじった方ならガッカリするような仕様になっています。

ESC $ x y SI

例えば「晴れ」(お日様)であれば、
ESC $ G j SI
つまり、0x1b 0x24 0x47 0x6a 0x0f と符号化されます。

また、「晴れ」(お日様)に続いて「雨」(傘)という二文字であれば、
ESC $ G j k SI
つまり、0x1b 0x24 0x47 0x6a 0x6b 0x0f と符号化されます。


お気づきのように、絵文字は1バイト文字なのです。
しかし、エスケープでは ESC $ と、ISO/IEC 2022では2バイト以上の文字集合を表わす中間文字を挟みます。また、通常のJIS X 0208に戻るのにSIを使います。意味が全く分かりません。

このようにとても残念な符号なのですが、入出力に対応させてあります。

2009/11/13(金)21:57 |Comments(0) |Trackback(0)

製造開発 | ソフトウェア開発 | コンピュータ | [編集]

▲ページトップ

コメント

コメントの投稿

アフリカの言語 ホーム gTef 0.14 beta 公開のお知らせ
トラックバック

この記事にトラックバックする(FC2ブログユーザー)
▲ページトップ

カレンダー

03 | 2017/04 | 05
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 - - - - - -

プロフィール

miraicorp

Author:miraicorp
未来情報産業(株) 社長

主として「ICカードこれひとつ」や「文字、文字コード」処理、時々C++などについて記述しています。

twitterツイッター

管理用

検索フォーム

お知らせ

コメント等お気軽にどうぞ。

気に入ったら拍手して頂けると、今後の記事を書く際の参考や励みになります。

■お仕事を募集しております
ソフトウェア製造の仕事や、原稿執筆の仕事などを随時受け付けております。
お気軽にご相談下さい

■初めての方へ
こまごまと更新しているため、他にも関連する記事があるかもしれません。
「月別アーカイブ」「検索フォーム」「カテゴリ」などをお試し下さい。
トップページはこちら

最新記事

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

広告枠

メール

メールはこちら

リンク

このブログをリンクに追加する

RSSリンクの表示

QRコード

QR