libgd/docs/README.JPN

39 lines
1.9 KiB
Plaintext

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