stackoverflowから取得した単純なPHPスクリプトは、背景が透明なPNGを生成し、それにテキストを書き込んでから、クライアントブラウザーに直接出力します。
$font = 25;
$string = 'My Text';
$im = @imagecreatetruecolor(300, 300);
imagesavealpha($im, true);
imagealphablending($im, false);
$white = imagecolorallocatealpha($im, 255, 255, 255, 127);
$red = imagecolorallocate($im, 255, 0, 0);
imagefill($im, 0, 0, $white);
$lime = imagecolorallocate($im, 204, 255, 51);
imagettftext($im, $font, 0, 0, 30, $red, "fonts/tt0588m_.ttf", $string);
header("Content-type: image/png");
imagepng($im);
imagedestroy($im);
範囲は、Google Charts(このQRコード画像など)など、URLを介して渡されたパラメータに基づいて画像をフィードする簡単なサービスを取得することです。
これまでのところ、上記のコードで生成された画像をクリックして保存したい場合を除いて、ブラウザはそれをPNG画像として認識しませんが、PHPスクリプト(タイプセレクタとして保存にはこのオプションがあります)のみ)、Google Chartsの例とは異なり、リソースがPNGファイルとして明確に識別されます。
ブラウザでこの正しいリソース識別を実現するにはどうすればよいですか?