0

私はキャプチャの作成に取り組んでおり、これはキャプチャ画像を作成するためのスクリプトです。

    header("Content-type: image/png");
$width              = 100;
$height             = 40;
$im                 = ImageCreate($width, $height);

$bg                 = ImageColorAllocate($im, 250, 250, 250);

$border             = ImageColorAllocate($im, 191, 191, 191);
ImageRectangle($im, 0, 0, $width - 1, $height - 1, $border);

$text               = base64_decode($GLOBALS["captcha_akey"]);

$textcolor          = ImageColorAllocate($im,0,5,5);

$font               = 3;

$font_width         = ImageFontWidth($font);
$font_height        = ImageFontHeight($font);

$text_width         = $font_width * strlen($text);

$position_center    = ceil(($width - $text_width) / 2);

$text_height        = $font_height;

$position_middle    = ceil(($height - $text_height) / 2);

ImageString($im, $font, $position_center, $position_middle, $text, $textcolor);

ImagePNG($im);

キャプチャは正しく表示されますが、キャプチャの上部にこのエラーが見つかりました。

    �PNG  IHDRd(u�� PLTE������IDAT8�퓻 �0DU�M�R�Y"�*=���)C)T�"��pXH���$����|�˟�$�9N����$獌�@�54�i[ -Hi\ku7��&Y���АLA�h;�Ah�^u�*���5 I:;���\�pd;��;ߓ�6b�(���'P�SY���IEND�B`�
4

2 に答える 2

0

ヘッダー(header( "Content-type:image / png");)がhtmlコンテンツで送信されたようです。すべてのヘッダーは、何よりも先に出力する必要があります。

于 2013-01-29T08:27:19.607 に答える
0

php.iniでgdエクステンションを有効にすることで機能しました

php.ini ファイルで次の行のコメントextension=php_gd2.dllを外します: (先頭の ; を削除します)

php.ini ファイルを見つけるには、次のファイルを作成してサーバーにアップロードし、ブラウザーで実行します。

    <?php
phpinfo();
?>

Configuration File (php.ini) Path /usr/local/lib and Loaded Configuration File /usr/local/lib/php.ini のような行が表示されます。

于 2013-07-02T04:48:40.190 に答える