Ваш код работает нормально. Все, что вам нужно, это добавить «выход» в конце.
Код:
header ('Content-Type: image/png');
$im = @imagecreatetruecolor(120, 20)
or die('Cannot Initialize new GD image stream');
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
imagepng($im);
imagedestroy($im);
exit;
EDIT:
Основная проблема заключается в том, что вы пытаетесь изменить заголовок ответа в представлении. Вы должны изменить это на функции контроллера, которая вызывает представление. Например:
return \Response::view('myView')->header('Content-Type', 'image/png');
А затем в вашем PHP-коде все, что вам нужно сделать, это удалить первую строку:
$im = @imagecreatetruecolor(120, 20)
or die('Cannot Initialize new GD image stream');
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
imagepng($im);
imagedestroy($im);