Closed Akira-Hayasaka closed 11 years ago
こんにちは
早速マージさせていただきました。ありがとうございます。 あと、localeは後ほど.cppに移すつもりでいます。
あいにくwin7vs2010の環境がないのでこちらで確認できないのですが、 これらの変更後も時折クラッシュしているのでしょうか?
もしよろしければ教えていただければと思います。
お返事ありがとうございます!
クラッシュはしなくなったのですが、stringからwstringに変換するところで文字化けすることがあります。 サーバから受け取った文字列を変換してるので、 サーバ側の文字コードの問題かもしれないのですが、 まだ原因が特定できていない状況です。。。 なにか情報をお持ちでしたらぜひ教えてください!
A
文字コード周りはちょっと複雑すぎて、私自身よくわかっていない部分がありますが。 もしかしたら、サロゲートペアが関連しているかもしれません。
Windows環境のデフォルトではwchar_tにUTF-16が入ります。 そして、XP以前ではサロゲートペアを無視して、 UCS-2に含まれる文字(wchar_t×1個で表現できる文字)だけを扱ってました。
Vistaからサロゲートペアの文字にも対応するようになり、 それらの文字はwchar_t×2個で1文字を表現するようになりました。
ofTrueTypeFont や ofxTrueTypeFontUC は、freetypeのライブラリを呼ぶ際に、 UCS-4表現で文字を指定します。
しかし、現状のofxTrueTypeFontUCでは、 サロゲートペアの文字(wchar_t×2個で表現されるUTF-16の文字)を UCS-4に変換することができていません。
このような場合に文字化けしているという可能性もあります。
情報ありがとうございます。 うーんめちゃくちゃ複雑ですね... サーバの人にも伝えて相談してみます。 ありがとうございました。
サロゲートペア思い出したついでに関数つくってみました。 ともあれ、バグの報告と修正ありがとうございました。
こんにちは。
いつも便利に使っています。 いままでosxでしかつかったことがなかったのですが、 win7vs2010で使用してみるとクラッシュすることがあったので、 ちょっとだけ手を加えました。 (実のところ、クラッシュの本当の原因はわかっていません。)