图像无法显示,因为它包含错误[图像生成器]


The image cannot be displayed because it contains errors [Image generator]

图像生成器出现一些问题。也许你会发现问题出在哪里?我得到:"图像无法显示,因为它包含错误",我正在下载图像文件,但没有错误。

<?php
if(isset($_GET['id']) && $_GET['id']){
//  require('../libs/global.inc.php');
    $id = $_GET['id'];
    $imagePath = "gov_220.jpg";//$track->getImg($id);
    $framePath = "otgFrame.png";
    $fontsize = 14;
    $font = 'times.ttf';
    $artistName = "bla bla";//$view->CutTheName("by ".$track->getArtist($id), 16);
    //$artistName = iconv(mb_detect_encoding($artistName, mb_detect_order(), true), "UTF-8", $artistName);
    $trackName = "la la";//$view->CutTheName($track->getName($id),16);
    $photo = imagecreatefromjpeg($imagePath);
    $w = imagesx($photo);
    $h = imagesy($photo);
    $new_image = imagecreatetruecolor(200, 200);
    imagecopyresampled($new_image, $photo, 0, 0, 0, 0, 200, 200, $w, $h);
    imagealphablending($new_image,true);
    $frame = imagecreatefrompng($framePath);    
    imagecopy($new_image,$frame,0,0,0,0,200,200);
    $fontcolor = imagecolorallocate($new_image, 255, 255, 255);
    imagettftext($new_image, $fontsize, 0,2,177,$fontcolor, $font, $trackName );
    $fontcolor = imagecolorallocate($new_image, 246, 228, 6);
    imagettftext($new_image, $fontsize, 0,2,196,$fontcolor, $font, $artistName );
    header('Content-type: image/png');
    imagepng($new_image);
    imagedestroy ($new_image);
}
?>

在文本编辑器中打开图像,我想您会发现php发出的警告。

删除header('Content-type: image/png');并将文件名添加到imagepng($new_image,"Test.png",9);可能已经解决了您的问题。。

并将该图像与HTML的img标签一起使用。即<img src="Test.png" alt="">