@H_3010@创建图像的基本步骤
@H301_0@注:在PHP中可以通过GD扩展库实现对图像的处理,不仅可以创建图像而且可以处理已有图像@H_3010@创建图像@H3010@绘制图像@H301_0@生成图像@H_3010@释放资源@H3010@图形验证码@H3010@水印@H3010@缩放与裁剪@H301_0@在PHP中通过GD库处理图像的操作都是在内存中处理,操作完成以后再以文件流的方式输出到浏览器或保存在服务器的磁盘中@H_3010@创建图像前4个步骤 @H3010@创建图像@H3010@-创建新的:@H3010@imagecreatetruecolor( ); //新建一个真彩图像@H301_0@-打开服务器或网络文件中已经存在的GIF, JPEG,PNG格式图像@H_3010@imagecreatefromjpeg( );@H3010@imagecreatefrompng( );@H3010@imagecreatefromgif( );@H3010@imagecreatefromwbmp( );@H301_0@//创建或打开失败的时候会返回字符串,并且输出一条错误信息@H_301_0@imagex();//输出画布宽度@H_301_0@imagey();//输出画布高度@H_3010@getimagesize();//取得图像大小@H3010@绘制图像@H301_0@使用各种画像函数设置图像的颜色,填充画布、画点、线段、各种几何图案,以及图像添加文本等@H_3010@//通过创建的图像资源开始绘制@H3010@1. imagecolorallocate() //分配颜色@H3010@2. imagefill() //区域填充@H3010@3. imagesetpixel() //画一个单一像素@H3010@4. imageline() //画一条线段@H3010@5. imagerectangle() //画一个矩阵@H3010@6. imagestring() //水平的画一个字符串@H301_0@7. imagettftext() //用TrueType字体向图像写入文字@H_301_0@8. imagettfbBox() //计算TrueType文字所占区域@H_3010@9. imagecopy() //拷贝图像的一部分@H3010@10. imagecopymerge() //拷贝并合并图像的一部分@H3010@11. imagecopyresampled() //重采样拷贝部分图像并调整大小@H301_0@输出图像@H_301_0@ 将图像以某种格式保存到服务器的文件中,或者将图像直接输出到浏览器上显示给用户,但在图像输出之前一定要使用header( )函数发送 Content-type通知浏览器,这次发送的是图像不是文本@H_301_0@输出图像之前其实还要先生成图像:@H_301_0@//生成图像@H_3010@header()@H3010@imagegif()@H3010@imagejpeg()@H3010@imagepng()@H3010@imagewbmp()@H301_0@<?PHP@H_3010@header('Content-type:image/jpeg');@H3010@$img=imagecreatetruecolor(200,200);@H3010@$color1=imagecolorallocate($img.50,50,50);@H3010@imagefill($img,$color1);@H3010@imagejpeg($img);@H3010@imagedestroy($img);@H3010@?>@H301_0@创建好的图片怎么使用?@H_301_0@<img src="http://localhost/demo9_1/index.PHP"/>
@H_301_0@//1.此图片返回给浏览器的方法@H_301_0@<?PHP@H_3010@header('Content-type:image/jpeg');@H3010@//默认情况是 header('Content-type:text/html');@H3010@$img=imagecreatetruecolor(200,200);@H3010@//新建一个长为200宽为200的真彩图像@H3010@$color1=imagecolorallocate($img,50);@H3010@//分配颜色@H3010@imagefill($img,$color1);@H3010@imagedestroy($string);@H3010@?>@H301_0@//2.也可以将图片保存到文件夹之后再使用@H_301_0@<?PHP@H_3010@header('Content-type:text/html;charset='utf-8');@H3010@$img=imagecreatetruecolor(200,200);@H3010@$color1=imagecolorallocate($img,$color1);@H3010@if(imagejpeg($img,'images/Robin.jpeg')){ //保存图像@H3010@echo"保存成功";@H3010@}@H3010@imagedestroy($img);@H3010@?>@H301_0@输出图像:@H_301_0@header函数注意点:@H_301_0@该函数不能有任何内容,在我们PHP代码的函数里,是我们使用的开头路径,@H_301_0@这个不是指web根目录而是操作系统文件根目录。@H_3010@释放图像@H301_0@最后是释放图像