PHP不仅可以输出HTML,还可以创建及操作多种不同图像格 式的图像文件,包括gf、png、jpg等。更方便的是,PHP还可 以直接将图像流输出到浏览器,要处理图像,需要在编辑PHP时 加上GD库,另外还可以使用第三方图形库
PHP不仅可以输出HTML,还可以创建及操作多种不同图像格 式的图像文件,包括gif、png、jpg等。更方便的是,PHP还可 以直接将图像流输出到浏览器,要处理图像,需要在编辑PHP时 加上GD库,另外还可以使用第三方图形库
在PHP中加载GD库 PHP中图形图像的处理功能要求有一个库文件作为支持,这就是 GD2库。PHP5自带此库。在 Windows平台下,安装GD2库很简 单,PHP5中自带了GD2库扩展(就是PHP的ext目录中的 hp_gd2d攻件),修改php.ini中 extension= php -gd2d前 面的“;"即可启用。如图 enabled php. ini·记事本 GD Versio bundled(2.1.0 compatible) 件()编辑(E)格式(O)查看(帮助(H) with freetype extension=php enchant. dll extension"php fileinfo dl xtension=php ftp d11 php gd2. dll extension=php_gettext. dll libJPEG Vers 9 compatible extension=php gmp d11 PNG Support enabled extension=php intl d11 extension=php imap. dll enabled extension=php interbase. dll libXpm Version 30411 extension"php 1 dap dll XBM Support WebP Support enabled
在PHP中加载GD库 PHP中图形图像的处理功能要求有一个库文件作为支持,这就是 GD2库。PHP5自带此库。在Windows平台下,安装GD 2库很简 单,PHP 5中自带了GD 2库扩展(就是PHP的ext目录中的 php_gd2.dll文件),修改php.ini中extension=php_gd2.dll前 面的“;”即可启用。如图:
创建图像 一个简单的案例10-2php <?ph np Simage=imagecreate(400, 400) /创建一个背景,默认为黑色 设置背景颜色为白色 Sbackground__color= imagecolorallocate(Simage, 255, 255, 255); $ black= imagecolorallocate($ Image000);定义颜色为黑色 imageline(Simage, 0,0, 100, 100, $black) 设置直线颜色为黑色 header("Content-type: image/png") /向浏览器发送头信息,输出PNG图片 magepng(Simage); /输出图形 imagedestroy(simage); /清除资源
创建图像 一个简单的案例10-2.php
创建图像 1、创建背景图形 创建背景可以使用 imagecreatel和 magecreatetruecolort0函数,这两个函数都可以创建 个空白的图形,并返回一个图像标志符(也可以称为句柄),供其他函数使用 语法格式如下 resource imagecreate(int Sx_size, int Sy_size) resource imagecreatetruecolor(int $x_size, int Sy_size 说明:$Xsze是背景的宽度,$ y-sIze是背景的高度, Imagecreate0函数用于建立一个基于 调色板的图形,创建后可改变背景颜色。 imagecreatetruecolori0函数用于创建一个真彩色图 形,背景颜色默认为黑色。 如果图形创建成功,函数将返回一个句柄,如果失败,并不会像其他函数一样返回 FALSE,这 时可以使用die0函数来捕获错误信息。例如 iMage= Imagecreate(200,200)orde("创建图形失败!")
创建图像 1、创建背景图形 创建背景可以使用imagecreate()和imagecreatetruecolor()函数,这两个函数都可以创建一 个空白的图形,并返回一个图像标志符(也可以称为句柄),供其他函数使用。 语法格式如下: resource imagecreate(int $x_size , int $y_size) resource imagecreatetruecolor(int $x_size , int $y_size) 说明:$x_size是背景的宽度,$y_size是背景的高度,imagecreate()函数用于建立一个基于 调色板的图形,创建后可改变背景颜色。imagecreatetruecolor()函数用于创建一个真彩色图 形,背景颜色默认为黑色。 如果图形创建成功,函数将返回一个句柄,如果失败,并不会像其他函数一样返回FALSE,这 时可以使用die()函数来捕获错误信息。例如: $image=imagecreate(200,200) or die("创建图形失败!");
创建图像 2、使用已有图片创建新图形 除了可以创建空白的背景图形外,还可以将已有的图片作为背景图形来创建新的图形。如 magecreatefromgif0函数可以根据已有的GF图片创建新图形, imagecreatefromjpeg0函 数可以根据已有的JPEG图片创建新图形,$ magecreatefrompng0函数可以根据已有的PNG 图片创建新图形。已有的图片也可以是远程的图片文件。例如10-3ph Simfile="dongman. jpg Simage=imagecreatefromjpeg(simfile); header("Content-type: image/jpg ) imagejpeg(simage) //输出图形 >
创建图像 2、使用已有图片创建新图形 除了可以创建空白的背景图形外,还可以将已有的图片作为背景图形来创建新的图形。如 imagecreatefromgif()函数可以根据已有的GIF图片创建新图形,imagecreatefromjpeg()函 数可以根据已有的JPEG图片创建新图形,$imagecreatefrompng()函数可以根据已有的PNG 图片创建新图形。已有的图片也可以是远程的图片文件。例如10-3.php:
创建图像 3、选择颜色 在处理图形的操作中,经常需要为图形的某些部分分配颜色,这时颜色值的选择就需要使用 magecolorallocate0函数来完成。语法格式如下 nt imagecolorallocate( resource Simage, int Sred, int Sgreen, int Blue 说明: imagecolorallocate函数返回一个标志符,代表了由给定的红、绿、蓝(RGB)值组成的颜色。 red、$ green和$bue分别是所需颜色的红、绿、蓝成分。这些参数是0~255的整数或者十六进制的0×00 0FF。 imagecolorallocate0函数必须被调用以创建每一种用在$ iMage所代表的图形中的颜色。例如 <?ph Sim=imagecreate(200, 200) 新建背景图形 $ background= imagecolorallocate($m,255,0.0);/背景设为红色 //十六进制方式 Swhite= imagecolorallocate(Sim, OXFF, OXFF, OXFF);
创建图像 3、选择颜色 在处理图形的操作中,经常需要为图形的某些部分分配颜色,这时颜色值的选择就需要使用 imagecolorallocate()函数来完成。语法格式如下: int imagecolorallocate ( resource $image , int $red , int $green , int $blue ) 说明:imagecolorallocate()函数返回一个标志符,代表了由给定的红、绿、蓝(RGB)值组成的颜色。 $red、$green和$blue分别是所需颜色的红、绿、蓝成分。这些参数是0~255的整数或者十六进制的0x00~ 0xFF。imagecolorallocate()函数必须被调用以创建每一种用在$image所代表的图形中的颜色。例如: <?php $im=imagecreate(200, 200); //新建背景图形 $background=imagecolorallocate($im, 255, 0, 0); //背景设为红色 //十六进制方式 $white=imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
创建图像 4.输出图形 如果需要将已经绘制的图形输出到浏览器或文件中,可以使用相 应的函数来完成。例如,使用 dimagegif0可以将图形以GIF格式输 出到浏览器或文件, imagejpeg0将图形以JPEG格式输出 magepng0函数将图形以PNG格式输出等。语法格式如下: bool imagepng(resource Simage [ string $filename ]) bool imagegif(resource Simage L string Sfilename 1) bool imagejpeg(resource Simage [ string Sfilename [, int Squality 11) qualit
创建图像 4.输出图形 如果需要将已经绘制的图形输出到浏览器或文件中,可以使用相 应的函数来完成。例如,使用imagegif()可以将图形以GIF格式输 出到浏览器或文件,imagejpeg()将图形以JPEG格式输出, imagepng()函数将图形以PNG格式输出等。语法格式如下: bool imagepng(resource $image [, string $filename ]) bool imagegif(resource $image [, string $filename ]) bool imagejpeg(resource $image [, string $filename [, int $quality ]])
创建图像 4.输出图形 不管输出什么格式的图片,都要使用 header0函数向浏览器发送相应的头信息,如要输出GIF格式的图片应使 用:" header(" Content-type: Image/gjf";";输出JPEG格式的图片应使用" header" Content-type: mage/jpeg")";PNG格式使用" header(" Content-type: image/png")"。例如10-4php <?ph Simage=imagecreate(400, 400 /创建背景图形 $ back color= imagecolorallocate($ iMage,2550.0);∥设置背景颜色为红色 header("Content-type: image/gif ") 发送头信息,使脚本输出GIF格式文件 imagegif($ Simage,"/ back. gif}/.图形保存为 back. gi文件 imagegif(Simage) 在浏览器中输出图形
创建图像 4.输出图形 不管输出什么格式的图片,都要使用header()函数向浏览器发送相应的头信息,如要输出GIF格式的图片应使 用:“header("Content-type: image/gif");”;输出JPEG格式的图片应使用“header("Content-type: image/jpeg");”;PNG格式使用“header("Content-type: image/png");”。例如10-4.php: