1、什麼是GD庫?php
一套操做動態圖像的函數庫數組
2、爲何使用GD庫?瀏覽器
由於在PHP中不只要處理文本數據,也須要處理圖像數據函數
3、何時使用GD庫?字體
驗證碼、圖像的裁剪、圖像的縮略、圖像的水印、股票信息圖、統計圖ip
4、安裝GD庫內存
①檢測php/ext目錄下是否擁有php_gd2.dll函數庫文件資源
②須在php.ini文件中開啓擴展包:extension=php_gd2.dllget
③檢測是否開啓成功:phpinfo();it
5、如何操做GD庫(PHP手冊內GD庫操做)
一、建立真彩色畫布(建立一塊操做圖像的內存資源)
$img=imagecreatetruecolor($width,$height);
二、分配顏色
$red=imagecolorallocate($img,255,0,0);
$green=imagecolorallocate($img,0,255,0);
$blue=imagecolorallocate($img,0,0,255);
$white=imagecolorallocate($img,255,255,255);
$black=imagecolorallocate($img,0,0,0);
$color=imagecolorallocate($img,R,G,B);
$color_alpha=imagecolorallocatealpha($img,R,G,B,0~127);
三、操做圖像
//畫一個矩形並填充
imagefilledrectangle($img,x1,y1,x2,y2,$color);
x一、y1:左上角座標
x二、y2:右下角座標
//畫一條線段
imageline($img,x1,y1,x2,y2,$color);
x一、y1:左端點座標
x二、y2:右端點座標
//畫一個圓形並填充
imagefilledellipse($img,cx,cy,$width,$height,$color);
cx:圓心x座標
cy:圓心y座標
$width:圓的寬
$height:圓的高
//畫一個多邊形並填充
imagefilledpolygon($img,$points,$num_points,$color);
$points:按順序包含有多邊形各頂點x和y座標的數組
$points=array(x1,y1,x2,y2,x3,y3,x4,y4);
$num_points:多邊形頂點的總數(>3)
//向圖像寫入文本
imagettftext($img,$size,$angle,x,y,$color,$fontfile,$text);
$size:字體大小
$angle:文本從左向右的角度,逆時針旋轉值
x、y:定義文本第一個字符的基本點
$fontfile:字體文件(.ttf)所在的路徑
四、通知瀏覽器以圖像的形式展示
header("content-type:image/png"); (圖像格式可自定義)
header("content-type:image/gif");
header("content-type:image/jpeg");
header("content-type:image/wbmp");
五、顯示圖像
imagepng($img);
imagegif($img);
imagejpeg($img);
imagewbmp($img);
六、回收資源
imagedestroy($img);