资源描述
,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,19,北京万博天地网络技术股份有限公司 版权所有,第十四,章 图形处理,本章目标,掌握,GD,库绘制图像的过程,掌握,直线和虚线的绘制函数,掌握,矩形和多边形的绘制函数,掌握,弧形、扇形、椭圆和圆形的绘制函数,掌握,文本绘制函数,综合,运用图像绘制,函数,本章内容,14.4,根据投票结果生成条形图,14.3,绘制文本,14.2,绘制图形,14.1,概述,14.1,概述,PHP,图像支持,GD,库,基础,14.1.1,PHP,图像支持,PHP,的图像生成和处理包括,Exif,EXIF,扩展可交换图像信息和使用图像元数据,GD,图像处理和,GD,库,ImageMagick,是,PHP,扩展,使用,ImageMagick API,创建、编辑和撰写位图图像,Gmagick,是,PHP,扩展,使用,GraphicsMagick API,来创建、修改和获取图像信息,Cairo,是,PHP,扩展,用来创建和修改图形的,2D,矢量图库,14.1.2,GD,库基础,可以通过两种方式查看服务器所支持的,GD,版本和它的配置参数,调用,phpinfo(),方法,使用,function_exists(imagecreate),函数,,GD,库的图像生成过程分为三步,创建图像,在画布上添加图形和文本,显示或者保存图像,14.1.2,GD,库基础(续),Imagecreate(),函数,用于新建一个基于调色板的图像,resource imagecreate ( int x_size , int y_size ),Imagecreatetruecolor(),函数,用于创建一个真彩色图像,resource imagecreatetruecolor ( int x_size , int y_size ),Imagecolorallocate(),函数,可以为一幅图像分配颜色,int imagecolorallocate ( resource image , int red , int green , int blue ),Imagefill(),函数,实现画布区域填充颜色,bool imagefill ( resource image , int x , int y , int color ),14.1.2,GD,库基础(续),GD,库根据不同的图像类型,提供了不同的输出图像函数,bool imagepng ( resource image , string filename ),以,PNG,格式将图像输出到浏览器或文件,bool imagegif ( resource image , string filename ),以,GIF,格式将图像输出到浏览器或文件,bool imagewbmp ( resource image , string filename , int foreground ),以,WBMP,格式将图像输出到浏览器或文件,bool imagejpeg ( resource image , string filename , int quality ),以,JPEG,格式将图像输出到浏览器或文件,14.1.2,GD,库基础(续),销毁图像,Imagedestroy(),函数用于销毁图像对象,释放图像所占用的内存空间,bool imagedestroy ( resource $image ),返回支持的图像类型,imagetypes(),函数可以返回当前,PHP,版本所支持的图像类型,14.2,绘制,图形,绘制,直线和虚线,绘制,矩形和多边形,绘制,弧形、扇形、椭圆形和,圆形,14.2.1,绘制直线和虚线,绘制直线,使用,imageline(),函数实现绘制一条直线的,功能,bool imageline ( resource image , int x1 , int y1 , int x2 , int y2 , int color ),画线宽度,使用,imagesetthickness(),函数来设置画线的,宽度,bool,imagesetthickness ( resource image , int,thickness,),绘制虚线,使用,Imagedashedline(),函数,bool imagedashedline ( resource image , int x1 , int y1 , int x2 , int y2 , int color,),用,imagesetstyle(),函数和,imageline(),函数的组合来绘制一条,虚线,14.2.2,绘制矩形和多边形,空心矩形,bool,imagerectangle ( resource image , int x1 ,int,y1 , int x2 , int y2 , int col ),实心矩形,Imagefilledrectangle(),函数用来绘制一个具有填充色的,矩形,bool,imagefilledrectangle ( resource image , int,x1, int y1 ,int,x2 , int y2 , int color,),14.2.2,绘制矩形和多边形(续),空心多边形,使用,imagepolygon(),函数绘制一个未填充颜色的多边形,bool imagepolygon ( resource image , array points , int num_points , int color ),实心多边形,Imagefilledpolygon(),函数用来绘制一个具有填充颜色的多边形,bool imagefilledpolygon ( resource image , array points , int num_points , int color ),14.2.3,绘制弧形、扇形、椭圆形和圆形,Imagearc(),函数,GD,库使用,imagearc(),函数实现绘制一个未填充的弧形、椭圆形和,圆形,bool imagearc ( resource image , int cx , int cy , int w , int h , int s , int e , int color ),Imagefilledarc(),函数,GD,库使用,Imagefilledarc(),函数绘制具有填充色的扇形、椭圆形和,圆形,bool imagefilledarc(resource image, int cx, int cy, int w, int h, int s, int e, int color, int style,),14.2.3,绘制弧形、扇形、椭圆形和圆形(续),Imageellipse,(),函数,GD,库使用,Imageellipse(),函数绘制一个无填充颜色的椭圆形和,圆形,bool,imageellipse ( resource image , int cx , int,cy, int w , int h , int color ),Imagefilledellipse(),函数,GD,库使用,Imagefilledellipse(),函数绘制具有填充颜色的椭圆形和,圆形,bool,imagefilledellipse ( resource image , int cx,int cy , int w , int h , int color ),绘制,3D,效果的饼状,图,14.3,绘制,文本,imagestring,(),函数,imagestring(),函数是使用内置的,GD,字体绘制水平,文本,bool imagestring ( resource image , int font , int x , int y , string s , int col ),imagestringup(),函数,imagestringup(),函数是使用内置,GD,字体绘制垂直地一行,文本,bool imagestringup ( resource image , int font , int x , int y , string s , int col,),14.3,绘制,文本(续),imagettftext,(),函数,imagettftext(),函数是用,TrueType,字体向图像写入,文本,array,imagettftext ( resource image , float size, float angle , int x , int y , int color , string fontfile , string text ),为,3D,效果饼状图添加,图例,14.4,根据投票结果生成,条形图,示例,使用,彩色的条形图显示投票结果,本章总结,GD,库绘制图像的过程,直线,和虚线的绘制函数,矩形,和多边形的绘制函数,弧形,、扇形、椭圆和圆形的绘制函数,文本,绘制函数,运用,图像绘制函数,
展开阅读全文