外部関数を使って画像を作成します。
画像の生データを返す関数:
function create_image()
{
...
ImageJPEG($myimg,NULL,85);
$imgdata = ob_get_contents();
ob_end_clean();
return $imgdata;
}
画像がどのように見えるかを示すはずの私のスクリプト:
$rawdata = create_image();
<img src="data:image/jpeg;base64,".base64_encode($rawdata)."" />
<img>
これで、タグ内の画像が完成していません。品質を50(とImageJPEG($myimg,NULL,50);
)にすると、画像は完全に表示されます。rawdataをキャッチしてディスクに書き込むと、イメージはすべての品質で完成します。
$rawdata = create_image();
$im = imagecreatefromstring($rawdata);
ImageJPEG($im,"./test.jpg",90);
タグだけでは<img>
機能しません。
なぜそれが機能しないのか誰かが知っていますか?