我發現這個簡單的腳本解釋如何使用imagejpeg():
<?php
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
header('Content-Type: image/jpeg');
imagejpeg($im);
imagedestroy($im);
?>
當我複製/粘貼在一個空的PHP文件它工作得很好。我顯示一個圖像。
現在,當我插入此代碼到格式化爲我現有的PHP文件之一如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
***code above***
</body>
</html>
它不返回任何圖像。只是一些奇怪的角色。
我想會發生什麼:
我讀其他職位,我認爲這個問題是來自我的主頭「的Content-Type」。但我不明白爲什麼嵌入代碼中的'Content-Type:image/jpeg'不會取代主標題中寫入的內容?它應該告訴imagejpeg()顯示圖像,而不是文本...
有誰知道如何解決它?謝謝。
非常感謝。其實我正在使用這種方法,但我認爲有一種方法可以做不同的事情......例如使用php函數。 – Guillaume
...我不太喜歡用這個方法建議的是,當你想要傳遞變量時,它變得非常不雅。假設你想通過GET_變量指示圖像的寬度,質量,圖像路徑,對嗎?所以它看起來像這樣:這麼重......只是調用一個php函數會更好。非常傷心,它不能做... – Guillaume
那麼,你可以使用其他方法,例如,引用圖片爲'/ picfolder/500/80/foo.jpg',並使用404錯誤處理程序創建圖像並在不存在的情況下提供圖像。我們使用這種方法獲得更好的URL並在多年前的瀏覽器遊戲中自動生成緩存的圖像。 – Joey