0

長さ100文字の文字列があります。.png文字列の各文字の画像を形成したい。これが私のコードです

$grid_ch = "PKNHVJAYCLGCOLJWKRIWNYKOTICRNXUXIZUMPEFPSHAAMHFBOIMLKVIDQKSOATLLTIICYESTIEIHAASDQPLTDWHLDXSVCQRHSBOJ";
$grid_ch_arr = str_split($grid_ch);
foreach($grid_ch_arr as $k=>$v){
    header("Content-Type: image/png");
    $image = imagecreatetruecolor(20, 30);
    $fill = imagecolorallocate($image, 255,255,255);
    $text_color = imagecolorallocate($image, 0,0,0);
    $border = imagecolorallocate($image, 255,255,255);
    imagefilltoborder($image, 0, 0, $border, $fill);
    imagestring($image, 5, 2, 2, $v, $text_color);
    $image_path = "../images/" . $v . ".png";
    imagepng($image,$image_path);
    echo $v . ",";
}

私の問題は、形成された画像が A.png から Z.png までであることです。私の文字列の文字ではなく、英語のアルファベットとして画像に名前が付けられているのはなぜですか。スクリプトの最後にある文字をエコーし​​てみましたが、問題なく動作しています。

助けてください。

4

2 に答える 2

3

S.png のような PNG ファイルが複数回存在することはあり得ないためです。追加の if 句が必要で、常に既存のファイルの名前を S_2.png などに変更します。

また、文字ごとに複数の画像が必要な理由もわかりません。

やりたいことを教えてください。このようにして、私たちはあなたをより良く助けることができます.

于 2013-10-06T19:24:46.157 に答える