[PHP-users 17611]Re: GDでの日本語の文字化け

airwhite airwhite @ airwhite.net
2003年 9月 1日 (月) 13:36:51 JST


こんにちは。

> WindowsのフォントはUTF-8対応だと思っているのですが
そうですよね。OSはuni-codeなんだしね。私も疑問なのです。

今は、職場なので環境は、
Windows98
Apache 1.3.28
php 4.3.2
になってしまいましたが
php.ini の内容は 次の通りです。

[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = Off
mbstring.detect_order = auto
;mbstring.substitute_character = none;
;mbstring.func_overload = 0

また、プログラムは、$fontをフルパスで指定。
$font = "c:/windows/fonts/kochi-gothic-subst.TTF";

次のヘッダーは、エラーが出るので削除しました。
(既にヘッダーは出力しているよ?と出たかな)。
header("Cache-control: no-cache");
ソースは、SJISで保存しました。
これで「愛123」と表示されました。

本当は、上の設定ではソースはEUC-JPで保存しなければです。
ソースを
mb_convert_encoding($str, "UTF-8", "EUC-JP");
と変更してEUC-JPで保存しても「愛123」と表示されました。

私の所では、Windows98、XP共に MS系フォントでは漢字が出ません。
私のやり方がまずいのでしょうか・・・?

ちなみにPHPは、国際化バージョンではなく本家のものをそのまま使っています。



PHP-users メーリングリストの案内