mbstring(libmbfl)で携帯絵文字サポート:Unicode 6.0に含まれない文字
絵文字サポートに関する続きです。
当初、Unicode 6.0とのマッピングが定義されない文字(iモードのロゴなど)は、使用頻度も低いと思われるため、サポートしない方針でしたが、リクエスト頂いたため、Unicode 6.0の私用面との相互変換を定義することにしました。従来より携帯電話の絵文字が利用するBMPのPUAを使用する案もありますが、ここでは、次の理由によりGoogleがemoji4unicodeで定義している私用面(FXXXX)へのマッピングを使用することにしました。
1.BMPの私用域(PUA)は他の外字と干渉する可能性が比較的高い。
2.Googleのマッピングはロゴを比較的近くに集めているため、定義が容易。
3.Googleのマッピングはそれなりに認知されている。
具体的な各キャリアとのマッピングを以下に示します。
このマッピング追加によりUnicode 6.0の定義も含めて全ての絵文字が使用可能となっています。
## Emoji Compatibility Symbol # Unicode;DoComo;KDDI;Softbank FE4C5;;;FBAA FE82D;F986;F748; FE83C;;F7A3; FEB89;;F7D2; FEE10;F975;; FEE11;F976;; FEE12;F978;; FEE13;F979;; FEE14;F9B1;; FEE15;F9B2;; FEE16;F94A;; FEE17;F94B;; FEE18;F94C;; FEE19;F94D;; FEE1A;F94E;; FEE1B;F94F;; FEE1C;F953;; FEE1D;F954;; FEE1E;F958;; FEE1F;F959;; FEE20;F95A;; FEE21;F95F;; FEE22;F960;; FEE23;F961;; FEE24;F962;; FEE25;F963;; FEE26;F964;; FEE27;F965;; FEE28;F966;; FEE29;F967;; FEE2A;F968;; FEE2B;F969;; FEE2C;F96A;; FEE2D;F96B;; FEE2E;F96C;; FEE2F;F96D;; FEE30;F96E;; FEE31;F96F;; FEE32;F970;; FEE33;F971;; FEE40;;F794; FEE41;;F7CF; FEE42;;F370; FEE43;;F478; FEE44;;F486; FEE45;;F48E; FEE46;;F48F; FEE47;;F490; FEE48;;F491; FEE49;;F492; FEE4A;;F493; FEE70;;;FBD8 FEE71;;;FBD9 FEE72;;;FBDA FEE73;;;FBDB FEE74;;;FBDC FEE75;;;FBDD FEE76;;;FBDE FEE77;;;F7F4 FEE78;;;F7F5 FEE79;;;F7F6 FEE7A;;;F7F7 FEE7B;;;F7F8 FEE7C;;;F7F9 FEE7D;;;F7FA