如何在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]);

http://www.bkjia.com/phpjc/628710.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/628710.htmltecharticle开启gd库是php中一个重要的参数,常用来处理图像,像图片的任何处理都需要gd库的支持,下面我来介绍各种系统中gd库的开启方法与命令,大…

Posted in 未分类