陈广安个人网站
会写代码的咸鱼
陈广安个人网站阿里云盘资源
陈广安个人网站网盘资源搜索
“ 梦想还是要有的,万一实现了呢!”
— 马云

7.16-GD库、水印

创建时间:2016-10-19

GD库:php处理图形的扩展库

  • 用途:

  • 生成字母以及汉字验证码

  • 加水印

  • 生成缩略图

  • 网站数据生成报表


  • 用GD库

  • 查看php的ext里面的扩展库,有没有php_gd2.dll文件

  • 然后打开php.ini,查看extension的php_gd2.dll扩展有没有开

  • phpinfo();函数,打印php环境信息,可以查看php已开启的扩展库,查看是否有gd一栏

——————————————————————————————————————————————

GD库函数


获取图片信息

getimagesize();//返回一个7个元素的数组,第1元素-宽,第2元素-高,第3元素-类型(1=gif,2=jpg,3=png)


创建画布

imagecreate(100,100);//两个参数宽高,返回画布资源类型


给画布分配颜色

imagecoloralloctate($画布资源,R,G,B);


输出画布imagepng | imgejpeg | imgegif 按照不同图片类型输出画布

imagepng($画布资源);


告诉浏览器输出来的图片

header("content-type:image/png");


创建画布,输出画布实例:

header("content-type:image/png");//告诉浏览器输出来的图片
$resData = imagecreate(100,100);//创建画布
imagecolorallocate($resData,255,0,0);//画布颜色
imagepng($resData);//输出画布


在画布上画文字

imagettftext(画布,字体大小,角度,x坐标,y坐标,字体颜色资源,字体文件路径,文本内容)

header("content-type:image/png");//告诉浏览器输出来的图片
$resData = imagecreate(500,300);//创建画布
$ccc = imagecolorallocate($resData,255,255,255);//创建一个颜色
$reg = imagecolorallocate($resData,0,0,0);//创建一个颜色
imagettftext($resData,14,0,50,150,$reg,'bahnschrift.ttf','1');
imagepng($resData);//输出画布




  • imageline(6个参数);———— 在画布上画线

  • 参数(画布资源,x第一点,x第二点,y第一点,y第二点,颜色)


  • imagesetpixel(4个参数);———— 在画布上面画一个像素的噪点

  • 参数(画布资源,x,y,颜色);


  • imagearc(8个参数);———— 画圆弧

  • 参数(画布资源,圆心的x,圆心的y,宽,高,幅度的起始,幅度的结束,颜色)


  • imagepng(画布资源,路径".png");———— 将画好的图片保存到本地磁盘


  • imagedestroy();———— 销毁画布




用图片来创建画布

imagecreatefromgif(路径);
imagecreatefrompng(路径);
imagecreatefromjpeg(路径);



  • imagecopyresampled(10个参数);———— 复制一部分图像并调整大小,抠图,缩放,

  • 参数(目标资源,源资源,目标的起始位置x,y,源图片的起始位置x,y,目标资源的宽高x,y,源资源的宽高x,y)


  • imagecreatetruecolor(宽,高);