[PHP-users 6484] Re: ImageLoadFont

Shigeki Mimura php-users@php.gr.jp
Mon, 25 Mar 2002 16:52:29 +0900 (JST)


三村です。

katsujiro> あの表は、「作れ」っていう意味だったんですか。
katsujiro> bdftogdの説明に「フォントを作るのに助けになるスクリプト」といった趣旨
katsujiro> が書いてあったのは、フォントそのものは出てこないと言うことだったのか…

gdfont.cにはキャラクタ型の配列データになってフォントデータが入ってます。
なので、フォントそのものが出てこないという訳じゃなくて、PHPが必要とする
フォントファイルの形になっていないというだけです。

gd.hで定義されているこういう構造体です。
typedef struct {
        /* # of characters in font */
        int nchars;
        /* First character is numbered... (usually 32 = space) */
        int offset;
        /* Character width and height */
        int w;
        int h;
        /* Font data; array of characters, one row after another.   
void gdImageFillEasily included in code, also easily loaded from
                data files. */
        char *data;
} gdFont;

このままの形でgdfont.cの最後の部分に実際の値が入って定義されているはずです。
この構造体の中身を取り出してファイルに書き出してやればお望みのファイルが
出来上がるはずです。

katsujiro> #jpgraphで日本語出るようにしたいとおもってはじめましたが、
katsujiro> #いろいろむずかしいですねぇ。

こういうことなら、ImageStringを使っている部分を、ImageTTFTextを使うように
書き換えてTrueTypeフォントを使うっていう手も有りますよね。
これだと日本語も出るはずですし、表示もきれいだと思いますよ。

# ただ私はjpgraphのソースを見ていないので嘘を言ってるかも知れません。