У меня есть проблема. Этот код должен генерировать текст для изображения и показывать это на странице, но это не сработало. Это показывает значок отсутствующего изображения. Код:
$stmt = $pdo->prepare("SELECT * FROM imiona");
$stmt -> execute();
while($row = $stmt -> fetch(PDO::FETCH_ASSOC)) {
$id = $row['id'];
$japan = $row['imie_japan'];
$polish = $row['imie_polish'];
echo "<b>".$polish."</b><br>";
echo $japan."<br>";
header("Content-type: image/png");
$fontsize = 40;
$fonttype = 'ARIAL.TTF';
$width = imagefontwidth($fontsize) * strlen($japan);
$height = imagefontheight($fontsize);
$image = imagecreatetruecolor($width,$height);
$white = imagecolorallocate ($image,255,255,255);
$black = imagecolorallocate ($image,0,0,0);
imagefill($image,0,0,$white);
imagettftext($image,$fontsize,0,0,0,$black,$fonttype,$japan);
imagepng ($image);
imagedestroy($image);
echo "<br>"; }
Вы не показываете только изображение, вы эхо из нескольких строк, например <b>".$polish."</b><br>";
и $japan."<br>";
а затем a <br>
в конце.
Удалите все это... Это приводит к тому, что изображение само разбивается, так как вы не можете отбросить случайные строки до и после кодированного изображения.