多くの人は、PHP が HTML 以外のデータを生成できることを知りません。これは、データベースから単純な広告の水平方向の画像を生成したり、単純にグラフィック ボタンを生成したりするのに非常に役立ちます。この例では、通常、「button.php3」という名前を付けます:
################################### ###################
-----button.php3------
Header("Content-type: image/gif" );
if(!isset($s)) $s=11;
$size = imagettfbbox($s,0,"fonts/TIMES.TTF",$text); ]-$size[0]);
$dy = abs($size[5]-$size[3]);
$ypad=9; ,$dy+$ypad);
$blue = ImageColorAllocate($im, 0x6D,0xAF);
$white = ImageColorAllocate($im, 255,255,255); ;
ImageRectangle($im,0,0,$dx+$xpad-1,$dy+$ypad-1,$black);
ImageRectangle($im,0,0,$dy+$ypad,$白);
ImageTTFText($im, $s, 0, (int)($xpad/2)+1, $dy+(int)($ypad/2), $black, "fonts/TIMES.TTF", $ text);
ImageTTFText($im, $s, 0, (int)($xpad/2), $dy+(int)($ypad/2)-1, $white, "fonts/TIMES.TTF", $テキスト);
ImageGif($im);
##################### # ########################
このファイルには HTML タグを含めないことが非常に重要です。< ;? には空白行を含めることはできません。このスクリプトの使用後に不完全な画像が表示された場合は、誤って PHP タグの外に文字を入力した可能性があります。このスクリプトは、この構文を使用して Web ページで使用できます。それを実行します:
################### ## ###########################
----test.php-----
新しいページ 1 ############# ##### #################################
test.php の結果は次のようになります:
's'パラメータはフォント サイズを設定するためのものです。
これは s=18 の場合です。
注 I:
フォント パス "/fonts/TIMES.TTF" TIMS.TTF フォントは、windows/fonts ディレクトリから取得できます。中国語のパフォーマンスに関しては、まだネチズンからのフィードバックが得られていません。
最初に黒い正方形の領域を描画し、次に白いディスプレイスメントを使用して 3D 効果を生成したことに注意してください。 L メソッドを使用して明るい背景を表示しますが、効果を確認するために背景色を暗くすることもできます。
まず、PHP インストールにサポートされる設定があることを確認する必要があります。 GD と TTF については、PHP FAQ を参照してください。libgd.a を /usr/local/lib にコピーし、gd*.h 関連ファイルを /usr/local/include にコピーしてから、FreeTTF ライブラリを「make install」することをお勧めします。
ここで見つけることができます http://rover.wiesbaden.netsurf.de/~kikita/ httf フォントを見つけてください!
注:
次のソース コードは上記の 偁 を表示できますか?
#### ########## ######################################
- -------- -----button.php------
Header("Content-type: image/jpeg") ;
if(!isset($bgred)) $bgred=0;
if(!isset($bgblue)) $bgblue=153; isset($chred)) $chred =255;
if(!isset($chgreen)) $chgreen=255;
if(!isset($shadow) ) $shadow="はい";
if(!isset($wrappos)) $wrappos=20;
if(!isset($jpegquality)) $jpegquality =80;
if(!isset($s)) $s=11;
$text=wordwrap($text,$wrappos," ",0); font)) $f/www/ttfonts/arialbd.ttf";
else
$f/www/ttfonts/".$font.".ttf";
$size = imagettfbbox($s,0,$fontname,$)テキスト);
$dx = abs ($size[2]-$size[0]);
$upper=abs[ 5]);
$under= $size[1];
$xpad=9;
if (substr_count($text,chr(13))>
$mult=(substr_count($ text,chr(13)));
$ypad=($mult*$crop*$s)+$s;
else $ypad=($crop-2)*$s;
$im = imagecreate($dx+$xpad,$th+$ypad);
$color = ImageColorAllocate($im, $bgred,$bggreen,$bgblue);
$black = ImageColorAllocate($im, 0,0,0);
$fontcolor = ImageColorAllocate($im, $chred,$chgreen,$chblue);
ImageRectangle($im,0,0,$dx+$xpad-1,$th+$ypad-1,$black);
ImageRectangle($im,0,0,$dx+$xpad,$th+$ypad,$white);
if ($shadow=="yes")
ImageTTFText($im, $s, 0, (int)($xpad/2)-2+1, $th+2+(int)($ypad/2) -3、$black、$fontname、$text);
ImageTTFText($im, $s, 0, (int)($xpad/2)-2, $th+2+(int)($ypad/2)-1-3, $fontcolor, $fontname, $text );
Imagejpeg($im,"",$jpegquality);
ImageDestroy($im);
?>
############################################## ######
これは次のフォームから作成できます:
#################################### #####################
----------test.php-------------- -----
新しいページ 1 頭>
<ボディ>
<フォームメソッド="POST" アクション="button.php">
文字
大
区切られた位置(折り返し区切り位置)
背景色
红色
绿色
蓝色
字元颜色
红色
绿色
蓝色
字型
阴影 是
否
トリミングサイズ
Jpeg 品格 (0-100)
フォーム>
############################################## ######
または直接上の例の呼び出し:
################################# ######################
----test.php-----
新しいページ 1 頭>
<ボディ>