1
$c = $record['corrects'];
$i = $record['incorrects'];

if($c == 0 && $i == 0)
{
    $image = imagecreatetruecolor(200,80);

    $white = imagecolorallocate($image,255,255,255);
    $red = imagecolorallocate($image,255,0,0);

    imagefilledrectangle($image,0,0,199,79,$white);

    $text = 'Quiz cancelled!';

    $box = imageftbbox(10,0,'verdana.ttf',$text);

    $x = imagesx($image)/2 - abs($box[2] - $box[0])/2 - 5;

    $y = imagesy($image)/2 - abs($box[5] - $box[3])/2 - 5;

    imagefttext($image,10,0,$x,$y,$red,'verdana.ttf',$text);

    header('Content-type: image/png');

    imagepng($image);
    imagedestroy($image);

    exit();
}
4

3 に答える 3

2

imagepng() および header() 呼び出しをコメントアウトし、ブラウザーで出力を表示して、エラーが生成されているかどうかを確認します。

于 2008-12-18T16:41:22.397 に答える
1

試してみましたが、うまくいきます。「クイズはキャンセルされました!」という赤いテキストが生成されました。

$c と $i の両方が実際に 0 であるかどうかを確認する必要がありますか?

私はあなたが持っていると仮定します < ? phpと?>ファイルの最初と最後にタグ?

編集: また、ttf フォント ファイルは正しい場所にありますか?

もう少し情報を提供していただけると助かります。ブラウザでエラーが発生していますか? それとも何も表示されないだけですか?

ベン

于 2008-12-18T16:41:17.293 に答える
1

言われているように、質問は詳細が少し大雑把です。

GDFONTPATH 環境変数は正しく設定されていますか?

<?php
// Set the enviroment variable for GD
putenv('GDFONTPATH=' . realpath('.'));

( uk.php.net/imagefttextより)

于 2008-12-18T16:46:44.897 に答える