电脑爱好者,提供IT资讯信息及各类编程知识文章介绍,欢迎大家来本站学习电脑知识。 最近更新 | 联系我们 RSS订阅本站最新文章
电脑爱好者
站内搜索: 
当前位置:首页>> PHP>>php3.0教程 -- 图像函数:

php3.0教程 -- 图像函数

来源:www.cncfan.com | 2006-1-11 | (有1749人读过)

PHP中有一组图像函数,可以动态生成gif格式的图像数据流并输出到 服务器.

为了这组函数能够工作,系统中必须有gd库的支持.

如果是在Unix下, 应该在编译PHP之前先取得gd的源码并编译之,生成libgd.a和一些.h文件,分别 拷到系统的库目录和头文件目录中(例如/usr/lib和/usr/include);

如果是在 Windows下,PHP3.0的安装程序会安装一个gd.dll文件,在程序中加一句'dl("gd. dll");'即可使用图像函数.

主要的图像函数有:

(1)ImageCreate(宽度,高度) 返回一个图像描述符.

(2)ImageCreateFromGif(文件名); 返回一个图像描述符.

(3)ImageColorAllocate(图像描述符,红,绿,蓝); 返回一个颜色描述符.由于Gif图像只能有256色,必须先对它分配调色板, 这个语句就是分配一个调色板项.

(4)ImageColorTransparent(图像描述符,颜色描述符); 指定某颜色为透明色.

(5)
ImageArc(图像描述符,圆心横坐标,圆心纵坐标,椭圆宽,椭圆高,起始 角,终止角,颜色描述符); ImageChar(图像描述符,字体,x,y,字符,颜色描述符);
ImageCharUp(图像描述符,字体,x,y,字符,颜色描述符);
ImageCopyResized(目标图像描述符,源图像描述符,目标x,目标y,源x,源y, 目标宽,目标高,源宽,源高);
ImageDashedLine(图像描述符,x1,y1,x2,y2,颜色描述符);
ImageFill(图像描述符,起始点x,起始点y,颜色描述符);
ImageFilledPolygon(图像描述符,各顶点数组,顶点数,颜色描述符); ImageFilledRectangle(图像描述符,x1,y1,x2,y2,颜色描述符);
ImageFillToBorder(图像描述符,起始点x,起始点y,边界色,填充色);
ImageLine(图像描述符,x1,y1,x2,y2,颜色描述符);
ImagePolygon(图像描述符,各顶点数组,顶点数,颜色描述符);
ImageRectangle(图像描述符,x1,y1,x2,y2,颜色描述符);
ImageSetPixel(图像描述符,x,y,颜色描述符);
ImageString(图像描述符,字体,x,y,字符串,颜色描述符);
ImageStringUp(图像描述符,字体,x,y,字符串,颜色描述符);
这些都是画图函数,需要略做解释的就是多边形的顶点数组内依次存放着 第一点x,第一点y,第二点x,第二点y,...

(6)ImageLoadFont(文件名); 文件应该是一个位图字体文件,返回一个字体号.系统缺省带有1-5字体号, 可以直接使用.

(7)ImageSX,ImageSY 分别得到一个图像的宽度和高度,接收一个图像描述符参数. (

(8)ImageColorAt(图像描述符,x,y);
ImageColorClosest(图像描述符,红,绿,蓝);
ImageColorExact(图像描述符,红,绿,蓝);
ImageColorSet(图像描述符,颜色描述符,红,绿,蓝);
ImageColorsForIndex(图像描述符,颜色描述符);
ImageColorsTotal(图像描述符);
前三个返回一个颜色描述符.ImageColorExact如果找不到匹配则返回-1. ImageColorsForIndex返回一个三项的数组,元素分别是红,绿,蓝值.
ImageColorsTotal返回总颜色数.

(9)ImageFontHeight,ImageFontWidth 接收一个字体号作为参数.

(10)ImageGif(图像描述符,[文件名]); 如无文件名,则将gif数据流送往浏览器.这时程序一开始应该有一句: Header("Content-type: image/gif")

(11)ImageDestroy(图像描述符); 图像函数中有一个小Bug(至少在PHP3.0RC和PHP3.0RC3 For Unix的源码中 已经发现,现在www.php.net上的下载文件应该已经更改),就是ImageSetPixel总是 在(y,y)处画点,不管x的值是什么,不过这个问题不是很大.
PHP热门文章排行
网站赞助商
购买此位置

 

关于我们 | 网站地图 | 文档一览 | 友情链接| 联系我们

Copyright © 2003-2024 电脑爱好者 版权所有 备案号:鲁ICP备09059398号