本文目錄一覽:
- 1、php如何開啟gd庫
- 2、如何在PHP中開啟GD庫支持詳解
- 3、怎樣開啟php的gd庫?
- 4、linux系統如何讓php使用GD庫函數
- 5、玉溪java培訓學校告訴你PHP中使用GD庫創建圓形餅圖?
php如何開啟gd庫
GD庫是幹什麼用的呢!它是php處理圖形的擴展庫,GD庫提供了一系列用來處理圖片的API,使用GD庫可以處理圖片,或者生成圖片。GD庫在php中默認是沒有開啟的,如果想讓它支持圖片處理功能,那麼就要手動開啟GD庫 工具/原料 wampserer(我一直用這個集成環境) win7 方法/步驟 找到php.ini文件,有兩種方法: 方法一:wampserver安裝目錄下找到路徑wamp\bin\mysql\mysql5.5.24\php.ini(我安裝的根目錄是D盤) 方法二:啟動wampserver,單擊任務欄wamp圖標,選中PHP,看到php.ini,點擊進入php.ini文件 打開php.ini文件 用查找工具找到extension=php_gd2.dll,把extension=php_gd2.dll 前面的【;】,介樣子就可以了 測試能否用GD庫
如何在PHP中開啟GD庫支持詳解
GD庫是幹什麼用的呢!它是php處理圖形的擴展庫,GD庫提供了一系列用來處理圖片的API,使用GD庫可以處理圖片,或者生成圖片。
GD庫在php中默認是沒有開啟的,如果想讓它支持圖片處理功能,那麼就要手動開啟GD庫。
開發工具為wampserer,步驟如下:
找到php.ini文件,有兩種方法:
方法一:wampserver安裝目錄下找到路徑wamp\bin\mysql\mysql5.5.24\php.ini(我安裝的根目錄是D盤)
方法二:啟動wampserver,單擊任務欄wamp圖標,選中PHP,看到php.ini,點擊進入php.ini文件
打開php.ini文件
用查找工具找到extension=php_gd2.dll,把extension=php_gd2.dll 前面的【;】,介樣子就可以了
測試能否用GD庫,代碼如下:
可以使用GD庫運行效果圖
怎樣開啟php的gd庫?
Windows下開啟PHP的GD庫支持
找到php.ini,打開內容,找到:
;extension=php_gd2.dll
把最前面的分號「;」去掉,再保存即可,如果本來就沒有分號,那就是已經開啟了。
Linux下開啟PHP的GD庫支持
#開啟GD庫支持有以下幾種方法
##檢測GD庫是否安裝命令
php5 -m | grep -i gd
或者
php -i | grep -i –color gd
##如未安裝GD庫,則為伺服器安裝,方法如下
### 如果是源碼安裝,則加入參數
–with-gd
### 如果是debian系的linux系統,用apt-get安裝,如下
apt-get install php5-gd
### 如果是CentOS系的系統,用yum安裝,如下
yum install php-gd
### 如果是suse系的linux系統,用yast安裝,如下
yast -i php5_gd
### 如果嫌這個世界不夠蛋疼呢,可以在原先編譯PHP不支持GD的情況下附加
先下zlib源碼,libpng源碼,gd源碼
解壓後到源碼目錄
zlib目錄
./configure –prefix=/usr/local/zlib
make ; make install
make clean
libpng目錄
cp scripts/makefile.linux ./makefile
./configure –prefix=/usr/local/libpng
make ; make install
make clean
gd目錄
./configure –prefix=/usr/local/libgd –with-png=/usr/local/libpng
make ; make install
make clean
最後在php.ini中,搜到[gd]後,在下面加一行
extension=/usr/local/libgdgd.so
然後重啟php服務,如果不行,試試reboot
好了,不過最後提醒一下,要知道這個世界很多意外的,源碼安裝,只添加gd庫這一個情況下,PHP版本和庫的版本各異
,所以:
– 不保證這麼付出了這麼多後有回報
– 不保證能夠成功載入gd.so
– 不保證不懷孕
所以如果是源碼安裝,最好還是在編譯PHP的時候加參數–with-gd
GD庫函數
GetImageSize
作用:取得圖片的大小[即長與寬] 用法:array GetImageSize(string filename, array [imageinfo]);
ImageArc
作用:畫弧線 用法:int ImageArc(int im, int cx, int cy, int w, int h, int s, int e, int col);
ImageChar
作用:寫出橫向字元 用法:int ImageChar(int im, int font, int x, int y, string c, int col);
ImageCharUp
作用:寫出豎式字元 用法:int ImageCharup(int im, int font, int x, int y, string c, int col);
ImageColorAllocate
作用:匹配顏色 用法:int ImageColorAllocate(int im, int red, int green, int blue);
ImageColorTransparent
作用:指定透明背景色 用法:int ImageColorTransparent(int im, int [col]);
ImageCopyResized
作用:複製新圖並調整大小 用法:int ImageCopyResized(int dst_im, int src_im, int dstX, int dstY, int srcX,
int srcY, int dstW, int dstH, int srcW, int srcH);
ImageCreate
作用:建立新圖 用法:int ImageCreate(int x_size, int y_size);
ImageDashedLine
作用:繪虛線 用法:int ImageDashedLine(int im, int x1, int y1, int x2, int y2, int col);
ImageDestroy 作用:結束圖形 用法解釋:int ImageDestroy(int im);
ImageFill
作用:圖形著色 用法:int ImageFill(int im, int x, int y, int col);
ImageFilledPolygon作用:多邊形區域著色 用法:int ImageFilledPolygon(int im, array points, int num_points,
int col);
ImageFilledRectangle作用:矩形區域著色 用法:int ImageFilledRectangle(int im, int x1, int y1, int x2, int
y2, int col);
ImageFillToBorder作用:指定顏色區域內著色 用法:int ImageFillToBorder(int im, int x, int y, int border,
int col);
ImageFontHeight
作用:取得字型的高度 用法:int ImageFontHeight(int font);
ImageFontWidth作用:取得字型的寬度 用法:int ImageFontWidth(int font);
ImageInterlace作用:使用交錯式顯示與否 用法:int ImageInterlace(int im, int [interlace]);
ImageLine作用:繪實線 用法:int ImageLine(int im, int x1, int y1, int x2, int y2, int col);
ImageLoadFont作用:載入點陣字型 用法:int ImageLoadFont(string file);
ImagePolygon作用:繪多邊形 用法:int ImagePolygon(int im, array points, int num_points, int col);
ImageRectangle作用:繪矩形 用法:int ImageRectangle(int im, int x1, int y1, int x2, int y2, int col);
ImageSetPixel作用:繪點 用法:int ImageSetPixel(int im, int x, int y, int col); ImageString 作用:繪橫式
字元串 用法:int ImageString(int im, int font, int x, int y, string s, int col);
ImageStringUp作用:繪直式字元串 用法:int ImageStringUp(int im, int font, int x, int y, string s, int
col);
ImageSX
作用:取得圖片的寬度 用法:int ImageSX(int im);
ImageSY
作用:取得圖片的高度 用法:int ImageSY(int im);
ImageTTFBBox
作用:計算 TTF 文字所佔區域 用法:array ImageTTFBBox(int size, int angle, string fontfile, string text);
ImageTTFText作用:寫 TTF 文字到圖中 用法:array ImageTTFText(int im, int size, int angle, int x, int y,
int col, string fontfile, string text); ImageColorAt 作用:取得圖中指定點顏色的索引值 用法:int
ImageColorAt(int im, int x, int y);
ImageColorClosest
作用:計算色表中與指定顏色最接近者 用法:int ImageColorClosest(int im, int red, int green, int blue);
ImageColorExact
作用:計算色表上指定顏色索引值 用法:int ImageColorExact(int im, int red, int green, int blue);
ImageColorResolve
作用:計算色表上指定或最接近顏色的索引值 用法:int ImageColorResolve(int im, int red, int green, int
blue);
ImageColorSet
作用:設定色表上指定索引的顏色 用法:boolean ImageColorSet(int im, int index, int red, int green, int
blue); ImageColorsForIndex 作用:取得色表上指定索引的顏色 用法:array ImageColorsForIndex(int im, int
index);
ImageColorsTotal
作用:計算圖的顏色數 用法:int ImageColorsTotal(int im); ImagePSLoadFont 作用:載入 PostScript 字型 用法
:int ImagePSLoadFont(string filename);
ImagePSFreeFont
作用:卸下 PostScript 字型 用法:void ImagePSFreeFont(int fontindex);
ImagePSEncodeFont
作用:PostScript 字型轉成向量字 用法:int ImagePSEncodeFont(string encodingfile);
ImagePSText作用:寫 PostScript 文字到圖中 用法:array ImagePSText(int image, string text, int font, int
size, int foreground, int background, int x, int y, int space, int tightness, float angle, int
antialias_steps);
ImagePSBBox作用:計算 PostScript 文字所佔區域 用法: array ImagePSBBox(string text, int font, int size,
int space, int width, float angle);
ImageCreateFromPNG作用:取出 PNG 圖型 用法:int ImageCreateFromPng(string filename);
ImagePNG作用:建立 PNG 圖型 用法:int ImagePng(int im, string [filename]);
ImageCreateFromGIF作用:取出 GIF 圖型 用法:int ImageCreateFromGif(string filename);
ImageGIF作用:建立 GIF 圖型 用法:int ImageGif(int im, string [filename]);
linux系統如何讓php使用GD庫函數
linux下為php添加GD庫的步驟如下:
一、下載
gd-2.0.33.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.7.tar.tar
zlib-1.2.2.tar.gz
freetype-2.1.9.tar.gz
php-4.3.9.tar.gz
二、安裝
1.安裝zlib
tar zxvf zlib-1.2.2.tar.gz
cd zlib-1.2.2
./configure
make
make install
2.安裝libpng
tar zxvf libpng-1.2.7.tar.tar
cd libpng-1.2.7
cd scripts/
mv makefile.linux ../makefile
cd ..
make
make install
注意,這裡的makefile不是用./configure生成,而是直接從scripts/里拷一個
3.安裝freetype
tar zxvf freetype-2.1.9.tar.gz
cd freetype-2.1.9
./configure
make
make install
4.安裝Jpeg
tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b/
./configure –enable-shared
make
make test
make install
注意,這裡configure一定要帶–enable-shared參數,不然,不會生成共享庫
5.安裝GD
tar zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure –with-png –with-freetype –with-jpeg
make install
6.重新編譯PHP
tar zxvf php-4.3.9.tar.gz
cd php-4.3.9
./configure (以前的參數) –with-gd –enable-gd-native-ttf –with-zlib –with-png –with-jpeg –with-freetype –enable-sockets
make
make install
?php
phpinfo();
?
Ok…..
玉溪java培訓學校告訴你PHP中使用GD庫創建圓形餅圖?
在php中,有一些簡單的圖像函數是可以直接使用的,但大多數要處理的圖像,都需要在編譯PHP時加上GD庫。除了安裝GD庫之外,在PHP中還可能需要其他的庫,玉溪電腦培訓認為這可以根據需要支持哪些圖像格式而定。不同的GD版本支持的圖像格式不完全一樣,最新的GD庫版本支持GIF、JPEG、PNG、WBMP、XBM等格式的圖像文件,此外還支持一些如FreeType、Type1等字體庫。通過GD庫中的函數,可以完成各種點、線、幾何圖形、文本及顏色的操作處理,也可以創建或讀取多種格式的圖像文件。
在PHP中,通過GD庫處理圖像的操作都是先在內存中處理,操作完成以後再以文件流的方式輸出到瀏覽器或保存在伺服器的磁碟中。創建一個圖像應該完成如下所示4個基本步驟。
①創建畫布:所有的繪圖設計都需要在一個背景圖片上完成,而畫布實際上就是在內存中開闢的一塊臨時區域,用於存儲圖像的信息。以後的圖像操作都將基於這個背景畫布,該畫布的管理就類似於我們在畫畫時使用的畫布。
②繪製圖像:畫布創建完成以後,就可以通過這個畫布資源,使用各種畫像函數設置圖像的顏色、填充畫布、畫點、線段、各種幾何圖形,以及向圖像中添加文本等。
③輸出圖像:完成整個圖像的繪製以後,需要將圖像以某種格式保存到伺服器指定的文件中,或將圖像直接輸出到瀏覽器上顯示給客戶。但在圖像輸出之前,一定要使用header()函數發送Content-type通知瀏覽器,這次發送的是圖片不是文本。
④釋放資源:圖像被輸出以後,畫布中的內容也不再有用。出於節約系統資源的考慮,需要及時清楚畫布佔用的所有內存資源。
我們先來了解一下一個非常簡單的創建圖像腳本。在下面的腳本文件image.php中,按前面介紹的繪製圖像的四個步驟,使用GD庫動態輸出一個扇形統計圖。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/242820.html