Blame docs/README.JPN

Packit ed3af9
	gd ライブラリで日本語文字列を使う上での注意事項
Packit ed3af9
Packit ed3af9
					山賀正人 (ma@yama-ga.com)
Packit ed3af9
Packit ed3af9
Packit ed3af9
gd-1.7.0 からはそのままで gdImageStringTTF() に対して
Packit ed3af9
SJIS encoding のフォントが使用できます。
Packit ed3af9
Packit ed3af9
	※ Unicode encoding のフォントに対しては日本語文字列を UTF-8 で
Packit ed3af9
	   指定すれば日本語が表示できます。
Packit ed3af9
Packit ed3af9
つまり gdImageStringTTF() で SJIS encoding のフォントを指定すると
Packit ed3af9
文字列は無条件に日本語であると解釈され、漢字コード (EUC, SJIS, 7bit JIS)
Packit ed3af9
が自動判別されて適切に処理されます。
Packit ed3af9
Packit ed3af9
更に UNICODE encoding のフォントに対しても JIS 系の日本語 (EUC, SJIS, 7bit JIS)
Packit ed3af9
を使用する場合は、コンパイル時に -DJISX0208 を付けてコンパイルしてください。
Packit ed3af9
こうすると gdImageStringTTF() で指定された文字列に ASCII 以外の文字があると
Packit ed3af9
無条件に日本語文字列であると解釈され、漢字コードを自動判別後に
Packit ed3af9
適切に処理されます。
Packit ed3af9
Packit ed3af9
ただしこの場合は UTF-8 の日本語文字列を扱えなくなりますので、
Packit ed3af9
ご利用の環境等に応じて -DJISX0208 を付けるか否かを決めてください。
Packit ed3af9
Packit ed3af9
漢字コードの変換に OS 付属の iconv() を使う場合は
Packit ed3af9
CFLAGS に -DHAVE_ICONV を付けてコンパイルしてください。
Packit ed3af9
この場合に -DHAVE_STDARG_H と -DHAVE_ERRNO_H も付けておくと
Packit ed3af9
漢字コード変換の際にエラーが発生した場合に適切なメッセージを
Packit ed3af9
表示するようになります。
Packit ed3af9
Packit ed3af9
Packit ed3af9
☆ EUC か SJIS か判別できなかった場合の漢字コードの判別方法
Packit ed3af9
Packit ed3af9
	(1) 環境変数 LC_ALL, LC_CTYPE, LANG をこの順番でチェックする
Packit ed3af9
	(2) 環境変数からも判別できなかった場合は UNIX ならば EUC、
Packit ed3af9
	    Win32 ならば SJIS と見なす
Packit ed3af9
Packit ed3af9
コンパイル時に -DSJISPRE を付けてコンパイルすれば、UNIX であっても
Packit ed3af9
SJIS を優先するようになります。