[PHP-users 32404] Re: htmlからPHPを呼び出す方法
小野(健)
ono.1982.kenji @ jp.fujitsu.com
2007年 7月 10日 (火) 08:29:15 JST
小野と言います。
あまり詳しくないけど、img タグにPHPから画像以外の情報送っても化ける
だけではないですか。
違うのかな。
headerタグをナントカすれば、文字以外で処理できるのかな?
例えば、以下のような感じで出力すれば、png として文字が出力されます。
<?php
//画像出力
header("Content-type: image/png");
header("Cache-control: no-cache");
// 宣言
//フォントサイズ
$font_size = 20;
//角度
$font_angle = 0;
//TTFフォントのパス(適時利用するフォントへ変更)
$font_path = "/usr/local/src/mplus-TESTFLIGHT-014/mplus-1p-black.ttf";
//組込み位置(X座標)
$tx = 10;
//組込み位置(Y座標)
//左下角が基準点になることに注意
$ty = 25;
//GD環境情報取得
$arrInfo = gd_info();
$setstring = "あいうえお" ;
if ($arrInfo['JIS-mapped Japanese Font Support']) {
//GDが対応している場合はUTF-8への変換は不要
$telop_text = $setstring;
} else {
//組込みテキスト
//GDが対応していない場合はUTF-8へ変換して処理を行う
//UTF-8に変換しない場合、文字化けします。
$telop_text = mb_convert_encoding($setstring,"UTF-8","auto");
}
//イメージ描画枠作成
$im = ImageCreate(400, 30);
//背景色
$background = ImageColorAllocate ($im, 200, 200, 200);
//テキストカラー
$font_color = ImageColorAllocate ($im, 0, 0, 0);
//テキスト描画
ImageTTFText ($im, $font_size, $font_angle, $tx, $ty,
$font_color, $font_path, $telop_text);
//PNG形式で標準出力へ
Imagepng ($im);
//イメージ破棄(メモリ開放)
ImageDestroy ($im);
?>
> 「index.html」
> <html>
> <body>
>
> <img src="a.php">
>
> </body>
> </html>
>
> 「a.php」
> <?php
>
> $maxcnt=6;
>
> $randam = rand(1,$maxcnt);
>
> $str="";
> if($randam==1){
> $str="A";
> }elseif($randam==2){
> $str="B";
> }elseif($randam==3){
> $str="C";
> }elseif($randam==4){
> $str="D";
> }elseif($randam==5){
> $str="E";
> }elseif($randam==6){
> $str="F";
> }
>
> echo $str;
> ?>
PHP-users メーリングリストの案内