日常整理PHP中簡單的圖形處理(經典),php圖形處理
1.載入GD庫
GD庫是一個開放的動態建立映像、原始碼公開的函數庫,可以從官方網站http://www.boutell.com/gd處下載。目前,GD庫支援GIF、PNG、JPEG、WBMP和XBM等多種映像格式,用於對映像的處理。
GD庫在PHP 5中是預設安裝的,但要啟用GD庫,必須修改php.ini檔案。將該檔案中的“;extension=php_gd2.dll”選項前的分號“;”刪除,儲存修改後的檔案並重新啟動Apache伺服器即可生效。
2.建立一個簡單的映像
使用GD2函數庫可以實現各種圖形映像的處理。建立畫布是使用GD2函數庫來建立映像的第一步,無論建立什麼樣的映像,首先都需要建立一個畫布,其他動作都將在這個畫布上完成。在GD2函數庫中建立畫布,可以通過imagecreate()函數實現。
使用imagecreate()函數建立一個寬度為200像素,高度為60像素的畫布,並設定畫布顏色RGB(225,66,159),最後輸出一個GIF格式的映像,代碼如下:
<?php$im = imagecreate(200,60); //建立一個畫布$white = imagecolorallocate($im, 225,66,159); //設定畫布的背景顏色為淺綠色imagegif($im); //輸出映像?>
3.使用GD2函數在照片上添加文字
PHP中的GD庫支援中文,但必須要以UTF-8格式的參數來進行傳遞,如果使用imageString()函數直接繪製中文字串就會顯示亂碼,這是因為GD2對中文只能接收UTF-8編碼格式,並且預設使用英文字型,所以要輸出中文字串,必須對中文字串進行轉碼,並設定中文字元使用的字型。否則,輸出的只能是亂碼。
使用imageTTFText()函數將文字“這是一個測試”輸出到映像中,代碼如下:
<?phpheader("content-type:image/jpeg"); //定義輸出為映像類型$im=imagecreatefromjpeg("images/photo.jpg"); //載入照片$textcolor=imagecolorallocate($im,56,73,136);//設定字型顏色為藍色,值為RGB顏色值$fnt="c:/windows/fonts/simhei.ttf"; //定義字型$motto=iconv("gb2312","utf-8","這是一個測試"); //定義輸出字型串imageTTFText($im,220,0,480,340,$textcolor,$fnt,$motto); //寫TTF文字到圖中imagejpeg($im); //建立JPEG圖形imagedestroy($im); //結束圖形,釋放記憶體空間?>
4.PHP產生驗證碼
建立一個checks.php檔案在檔案中使用GD2函數建立一個4位的驗證碼,並將產生的驗證碼儲存到session中:
<?phpsession_start();header("content-type:image/png"); //設定建立映像的格式$image_width=70; //設定映像寬度$image_height=18; //設定映像高度srand(microtime()*100000); //設定隨機數的種子for($i=0;$i<4;$i++){ //迴圈輸出一個4位的隨機數 $new_number.=dechex(rand(0,15));}$_SESSION[check_checks]=$new_number; //將擷取的隨機數驗證碼寫入到SESSION變數中 $num_image=imagecreate($image_width,$image_height); //建立一個畫布imagecolorallocate($num_image,255,255,255); //設定畫布的顏色for($i=0;$i
建立一個使用者登入的表單並調用checks.php在表單中輸出映像的內容:
<?phpsession_start();if($_POST["Submit"]!=""){$checks=$_POST["checks"];if($checks==""){echo "";}if($checks==$_SESSION[check_checks]){ echo "";}else{ echo "";}}?>rand函數的應用
以上內容是小編給大家分享的有關php中簡單的圖形處理,希望大家喜歡。
http://www.bkjia.com/PHPjc/1065157.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1065157.htmlTechArticle日常整理PHP中簡單的圖形處理(經典),php圖形處理 1.載入GD庫 GD庫是一個開放的動態建立映像、原始碼公開的函數庫,可以從官方網站http:...