1、開啟GD擴充
extension=php_gd2.dll
Apache restart
2、範例:
場景:
製作500×300的綠圖
圖片型畫。可以操作的圖像資源。
創建新畫布(新建)
ImageCreate(寬,高),創建基於調色板的畫布。
imageCreateTrueColor(寬,高);創造真彩色的畫布。
基於圖片建立畫布(開啟)
imageCreateFromJPEG(圖片位址);
imageCreateFromPNG(圖片位址);
imageCreateFromGfromPNG(圖片位址);
imageCreateFromGIF(IfromG);個顏色,應該先將顏色分配到畫布上。
使用函數:
顏色標識= imageColorAllocate(畫布,R,G,B);
顏色的表示方式:
RGB
③畫布:將填充點填色:將顏色相同的點填色:將點填色的點填色:將點填色替換)
使用函數:
imageFill(畫布, 填充位置x,填充位置Y,顏色標識)完成
位置採用座標進行管理:
原點:0,0,畫布的左上角。
向右,x軸增加,向下Y軸增加。
右下角座標:width-1,height-1
④輸出畫布
將畫布中處理好的圖樣訊息,輸出出來。
典型的:
1輸出到圖片檔案。
2直接輸出。
使用函數:
imagePNG(畫布[, 檔案位址]):
imageJPEG();
imageGIF();
如果沒有第二個參數,表示直接輸出。
註:如果直接輸出到瀏覽器,需要告知瀏覽器,回應資料的類型應該是PNG格式的圖片:
使用指令Content-type;
一個畫布可以輸出多次,輸出為各種格式
⑤銷毀畫布資源
imageDestroy()
範例程式碼:<?php //例如:制作500×300的绿色图片 $width=500; $height=300; //创建真彩色的画布 $img=imageCreateTrueColor($width,$height); // var_dump($img); //测试结果: resource(2) of type (gd) $img是一个资源类型 //使用函数imageColorAllocate(画布,R,G,B)分配颜色,颜色的表示方式:R G B $green=imageColorAllocate($img, 0x0, 0xff, 0x0); //填充画布,原点:0,0,画布的左上角,imageFill(画布, 填充位置x, 填充位置Y,颜色标识)完成 imageFill($img,0,0,$green); //输出画布,直接输出到当前路径下为图片文件,格式有PNG、JPEG、GIF //imagePNG($img,'./green.png'); //如果没有第二个参数,表示直接输出 //如果直接输出到浏览器,需要告知浏览器,响应数据的类型应该是PNG格式的图片:使用指令Content-type header('Content-Type:image/png;'); imagePNG($img); //注:一个画布可以输出多次,输出为各种格式 //销毁画布资源 imageDestroy($img);
文範例程式碼:
<?php //例如:制作500×300的绿色图片 $width=500; $height=300; //创建真彩色的画布 $img=imageCreateTrueColor($width,$height); // var_dump($img); //测试结果: resource(2) of type (gd) $img是一个资源类型 //使用函数imageColorAllocate(画布,R,G,B)分配颜色,颜色的表示方式:R G B $green=imageColorAllocate($img, 0x0, 0xff, 0x0); //填充画布,原点:0,0,画布的左上角,imageFill(画布, 填充位置x, 填充位置Y,颜色标识)完成 imageFill($img,0,0,$green); //输出画布,直接输出到当前路径下为图片文件,格式有PNG、JPEG、GIF //imagePNG($img,'./green.png'); //如果没有第二个参数,表示直接输出 //如果直接输出到浏览器,需要告知浏览器,响应数据的类型应该是PNG格式的图片:使用指令Content-type header('Content-Type:image/png;'); imagePNG($img); //注:一个画布可以输出多次,输出为各种格式 //销毁画布资源 imageDestroy($img);
網示例內容請關注PHP中文網(m.sbmmt.com)!