网站上线流程 配合人员,青岛网信信息科技有限公司,wordpress 远程媒体库,科技信息网站建设的背景文章目录一、 GD2简介1、 验证码#xff08;实际上是一个img#xff09;二、 GD2库使用步骤2.1添加扩展2.2修改php配置文件2.3重启服务三、 GD2里面的常用方法3.1 imagecreate3.2 imagecolorallocate3.3 imagefill3.4 输出图像资源3.5创建真彩画布3.6在图像中写文字3.6.1imag…
文章目录一、 GD2简介1、 验证码实际上是一个img二、 GD2库使用步骤2.1添加扩展2.2修改php配置文件2.3重启服务三、 GD2里面的常用方法3.1 imagecreate3.2 imagecolorallocate3.3 imagefill3.4 输出图像资源3.5创建真彩画布3.6在图像中写文字3.6.1imagettftext3.6.2imagestring3.7在图像中写横线3.8在图像中画矩形3.9在图像中画弧度四、 验证码案例4.1验证码第一版4.2回顾生成四位随机数4.3验证码第二版4.4点击按钮切换图片4.5点击按钮切换验证码五、 水印图一、 GD2简介
php语言本身没办法直接操作图片但是需要安装一些扩展库有很多但是常用的是GD2库。 GD2库实际上主要用在下面几个方面
1、 验证码实际上是一个img
美食杰的注册页
2、 水印图
3、 缩略图
二、 GD2库使用步骤
2.1添加扩展
我们的phpstudy集成环境下是默认安装了php_gd2.dll文件如果没有自己百度搜索一下把下载的dll文件放在你的对应版本的ext目录下。
2.2修改php配置文件
我们直接在目录下找到配置文件双击打开
或者通过phpstudy打开
按住ctrlf搜索extensionphp_gd2.dll文件把前面的分号去掉
2.3重启服务 三、 GD2里面的常用方法
3.1 imagecreate
imagecreate宽高是新建一个基于调色板的图像本质上就是创建一个画布。默认是透明色
3.2 imagecolorallocate
imagecolorallocate(画布资源red,gren,blue); 注意红绿蓝是RGB的色值每一个取值范围是0-255
3.3 imagefill
imagefill(画布资源x轴坐标用轴坐标,填充的颜色) 注意图像的左上角默认是0,0点
3.4 输出图像资源
imagepng()是输出png格式图像到浏览器 imagejpeg()是输出jpeg格式图像到浏览器 imagegif()是输出gif格式图像到浏览器 如果直接输出是乱码
因为浏览器默认是解析成html标签不识别图像所以加上header头识别
3.5创建真彩画布
imagecreatetruecolor(宽高)创建一个真彩的图像资源默认是黑色的 imagepng可以设置两个参数 如果imagepng()设置了一个参数是把图像资源直接在浏览器输出如果设置了第二个参数代表把图片保存成自己定义的文件名。
3.6在图像中写文字
3.6.1imagettftext
imagettftext — 用 TrueType 字体向图像写入文本 我们在自己的计算机c盘/windows/fonts/里面有各种内置的字体
我们随意复制一个文件放在自己的项目文件夹下面
显示效果如下 这个方法也可以输出中文 3.6.2imagestring
imagestring — 水平地画一行字符串,输中文会乱码只能输出字符。 这个方法字符的左上角为0,0点不用设置字体格式默认使用内置字体
总结如下 1、 imagettftext不仅能输出英文字符还能输出中文 imagestring只能输出英文如果是中文是解析后的乱码 2、imagettftext是文字的左小角为0,0点。 imagestring文字的左上角为0,0点 4、 imagettftext等加入字体文件格式imagestring使用默认字体
3.7在图像中写横线
imageline(图像资源开始点的x坐标开始点的y坐标结束点的x坐标结束点的y坐标线条颜色)
3.8在图像中画矩形
imagerectangle(图像资源左上角的x和y坐标右下角的x和y坐标矩形颜色);
3.9在图像中画弧度 参数说明如下
4.0 imagecreatefrompng/jpeg/gif
4.2getimagesize
getimagesize()是返回的关于图像大小以及类型相关信息的数组 第一个参数宽 第二个参数高 第三个参数给出的是图像的类型返回的是数字其中1 GIF2 JPG3 PNG 最后一个参数是图像类型 4.2imagecopy imagecopy(目标图像资源源图像资源放在目标位置的x和y坐标,原图截取开始的x和y坐标截取原图的宽度和高度)
四、 验证码案例
4.1验证码第一版
4.2回顾生成四位随机数
rand(开始数字结束数字)会随机生成一个开始到结束范围内的数字 在这里插入图片描述
4.3验证码第二版 生成效果如下
然后我们生成随机的颜色修改如下
4.4点击按钮切换图片 4.5点击按钮切换验证码
因为浏览器有一个缓存机制就是访问同一个文件的时候就不会去给服务器发请求从缓存里读取所以导致我们点击按钮的没有作用还是访问的以前缓存的那个图片我们采取拼接参数的形式
所以我们更改代码如下
五、 水印图