萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> 如何在PHP中開啟GD庫支持詳解

如何在PHP中開啟GD庫支持詳解

開啟GD庫是php中一個重要的參數,常用來處理圖像,像圖片的任何處理都需要GD庫的支持,下面我來介紹各種系統中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]);

copyright © 萬盛學電腦網 all rights reserved