当前课程知识点:PHP程序设计 >  PHP文件和图像技术 >  图像基本操作 >  图像基本操作1

返回《PHP程序设计》慕课在线视频课程列表

图像基本操作1在线视频

图像基本操作1

下一节:图像基本操作2

返回《PHP程序设计》慕课在线视频列表

图像基本操作1课程教案、知识点、字幕

我们刚才已经填了一个颜色

对吧填了一个颜色

那么现在就要在这个画布上面

去绘制图像了

来需要同学们仔细看一下这张图

那么绘制图像

我们是通过坐标系统去绘制的

所以也就是说

当我们有这么一个画布的时候

这个左上角的位置的坐标就是0,0

X是0 Y是0

所以呢

你想你对应的

如果要在这个位置画

你是不是应该给它一个相应的X的坐标

Y的坐标对吧

那么记住这个左上角是0,0

是X为0

Y也为0的

所以呢

你在这个画布里面去绘各种各样的图案

你都需要去设计一下

你X是多少Y是多少对吧

是这样子的一个位置OK

那么首先第一个我们可以做区域填充

那么区域填充不可以用来绘制图像

它只是干什么呢填一个颜色

在已存在的图像中

大面积的颜色很方便的可以替换为别的颜色

那么用的是这样一个函数

括号里面的参数有哪些呢

第一个又是图像句柄

你会发现咱们基本上今天学的

所有函数的第一个参数

几乎都是这个画布的资源句柄

对吧返回的资源句柄

然后第二个参数是X轴

应该是X坐标和Y坐标对吧

然后第三个参数是被替换的颜色

那么这个函数我们后面会用到

它做的是一个区域填充对吧

那么接着就到了我们重点内容了

咱们之前说我说我这节课讲图形图像

其实是为了教同学怎么做那个验证码

我相信很多同学都是上网看见过验证码的

验证码绝对不是几个数字或者几个字母数字

那样子往过一排

往往还会做什么

是不是还让它歪歪扭扭一下

对不对

让它斜一下

然后往往就是底色的那个图片

有一些点点呀

有一些斜线呀

在那交错着对不对

它为什么要干那些事情

它为什么不让我们一眼看清呢

它为了防止计算机前登录的那个不是人

没错就是为了这个

当人能够一眼看清的时候

机器也能一眼看清的

而我们为什么要歪歪扭扭

为什么要让底下加上各种的干扰线和干扰点

它是为了让机器去做这个判断的时候

不能准确判断

当然了

现在即便加上了那些干扰点

加上了那些斜线让那个字歪歪扭扭

现在机器也能看了

pertion里面有一个第三方的库叫什么

我名字我忘了

它可以直接去读

只要里面是字母和数字

它可以直接读

所以大家现在看到的验证码

往往都是什么样的

就是个最简单的计算题什么

一加二等于让你有个框

让你去写是多少对不对

那么你不要小看这个一加二等于

这个一加二等于它要先把一读出来

要把加号读出来

要把二读出来

然后他还要理解这个式子再算一个答案

对于机器来说这个还是有点困难的

所以呢那个除了人工打码之外

没有别的办法了

所以呢

咱们现在做的验证码

还是最传统最老旧的一个验证码

就是我们要加一些干扰点和干扰线

那么这就意味着我们肯定要在那个画布里面

是不是绘点了

绘点这个例子我就不做了

一会儿同学们可以自己去研究一下

因为这个例子做出来

效果不是特别好

对吧一个点在画布里面不容易看清楚

大家看清楚这个绘点的这个函数

括号里面几个参数

第一个又是一个什么

又是一个资源句柄

然后是这个点的X轴

这个点的Y轴

然后这个点的颜色好了

就这几个就这几个

好的OK

这是一个绘点的

那么我们一会儿来绘一下这个线条

这个线条很简单

这个函数就是一个后面是一个line

对吧是一条直线

括号参数比较多一些

但是事实上是比较好理解的

第一个又是一个图像句柄

然后呢

因为一条线有两点组成对不对

但是一个点呢

有一个X坐标和Y坐标组成

所以呢

后面这四个数字其实是什么

起始点来X坐标

起始点的Y坐标

结束点的X坐标结束点的Y坐标

好了这四个

然后给一个color

也就是颜色好绘了一条线OK

我们来绘一条线

就在这个画布上面绘一条线

首先我们这个地方是不是是一个红色画布

我们这条线还能不能让它红色

不能让它红色

所以这个地方我给它再加一个颜色

比如说我让它$对吧

我给它起个名

比如说$green绿色的线

绿色的线这个地方要怎么改

0然后这是什么

255

这是不是就是绿色的颜色

这只是设了个颜色

咱们还没画线呢

因为我知道咱们肯定是需要这个的

然后imageline括号

括号里面第一个是我们的画布$im

第二个起始点的X坐标

大家想一想我这是一个400×300的

咱们就差不多吧

比如说50

然后这个还是50

Y坐标也是50,50

然后呢

咱们的这个到哪个地方

结束的那个坐标设个多少

200再是个100对吧

好应该是一条斜线

然后我们这个地方color

我们刚刚选定的color是不是green好的

我们分好带起来OK好了

我好像画好了

没错

我们来跑一下

好了

画了这么一条绿线出来了

那你想我刚才说了

验证码如果你想要多条干扰线

而且每一次都不一样的话怎么弄呢

咱们是不是可以写一个循环

然后让它随机一下

还可以把颜色都随机了

对不对

来比如说我颜色怎么样都随机

这条绿线怎么样都随机

我们是不是有个rand函数

括号0,255

然后这是红色的rand0,255

Ctrl+C

然后我在Ctrl+V一下

绿色也0,255

随机让它随机起来

我们这个时候再跑一下

现在是这个颜色

我刷新一下变色了

再刷新一下还在变

你看在变不同的颜色是吧

好了你的线是不是不一样了

线的颜色首先不一样了

你能够位置不一样你怎么样

改什么

是不是改坐标呀

改坐标在多个这个干扰线不就出来了嘛

对吧

好的我们这个地方先绘了一个直线

大家可以自己动手试一下

PHP程序设计课程列表:

PHP开篇

-PHP概述

--PHP概述与工作流程

-PHP概述--作业

-开发环境搭建

--开发环境搭建一

--开发环境搭建二

--集成环境的安装

-开发环境搭建--作业

-PHP开篇

PHP语法基础

-PHP语法入门

--语法入门一

--语法入门二

-PHP数据的输出

--数据输出

-PHP数据类型

--数据类型1

--数据类型2

--数据类型3

--数据类型4

--数据类型5

--数据类型6

--PHP语言中的数学运算符

-PHP常量和变量

--常量和变量1

--常量和变量2

--常量和变量3

--常量和变量4

--常量和变量5

--常量

-PHP常量和变量--作业

-PHP的运算符和表达式

--运算符和表达式1

--运算符和表达式2

--运算符和表达式3

--PHP的三元运算符

-PHP语法基础--PHP的运算符和表达式

-PHP语法基础

流程控制语句

-条件判断语句

--条件判断语句1

--条件判断语句2

--条件判断语句3

--条件语句

-循环控制语句

--循环控制语句

--循环语句练习1

--循环语句练习2

-跳转语句和终止语句

--跳转和终止语句

-PHP流程控制

-流程控制

PHP数组

-数组概述和分类

--数组概述和分类

--PHP数组分类

-数组创建、删除和修改

--数组创建、删除和修改1

--数组创建、删除和修改2

--数组创建

-数组遍历

--数组遍历1

--数组遍历2

--数组遍历3

--数组遍历4

--数组遍历5

--foreach

-数组相关函数

--数组相关函数1

--数组相关函数2

--数组相关函数3

--数组相关函数4

--数组相关函数5

--数组相关函数6

--数组函数的练习

-PHP数组--作业

-分页函数的应用

-PHP数组

-数组练习1

-数组练习2

-数组练习3

PHP函数

-函数的定义与调用

--函数定义与调用

-函数参数传递

--函数参数传递1

--函数参数传递2

-自定义函数总结和实验

--自定义函数总结和实验

-常用变量和数学函数

--变量和数学函数库

--数学函数实验

--数学函数

-日期和时间函数

--日期时间函数1

--时间日期函数2

--日期时间函数实验1

--时间日期函数实验2

--时间日期函数实验3

--倒计时

-PHP函数--作业

-PHP函数

字符串函数

-字符串概述

--字符串特点

--字符串处理方式

-常见的字符串函数

--常见字符串函数1

--输出函数1

--输出函数2

--输出函数3

--去除空白函数1

--去除空白函数2

--去除空白函数3

--填补函数和大小写函数

--其他字符串函数1

--其他字符串函数2

--与HTML相关函数1

--与HTML相关函数2

--与HTML相关函数3

--与HTML相关的函数4

--与HTML相关函数5

--字符串函数实验1

--字符串函数实验2

--字符串函数实验3

--字符串函数实验4

--字符串练习1

--字符串练习2

--字符串练习3

--字符串练习4

--字符串练习5

--字符串函数

-正则表达式

--正则表达式基本概念

--兼容正则表达式函数

--正则表达式语法构成

--正则表达式原子讲解1

--正则表达式原子讲解2

--正则表达式原子讲解3

--正则表达式元字符讲解1

--正则表达式元字符讲解2

--正则表达式元字符讲解3

--正则表达式元字符讲解4

--正则表达式元字符讲解5

--正则表达式元字符讲解6

--正则表达式元字符讲解7

--正则表达式中的模式修正符号

--正则表达式练习

--正则表达式

-字符串函数--作业

-PHP字符串函数

PHP文件和图像技术

-文件概述和操作

--文件概述和操作1

--文件概述和操作2

-文件的上传和下载

--文件上传1

--文件上传2

--文件上传3

--文件下载

-图像基础

--图像基础1

--图像基础2

-图像基本操作

--图像基本操作1

--图像基本操作2

--图像基本操作3

--图像基本操作4

--图像基本操作5

--图像基本操作6

--表单与验证码的结合

--图像技术练习1

--图像技术练习2

--图像技术练习3

--缩略图

-PHP文件与图像技术-作业

-PHP文件和图像技术

-变色验证码

会话管理

-会话表单

--会话表单概述1

--会话表单概述2

--会话表单概述3

--超全局变量1

--超全局变量2

--超全局变量3

--表单安全验证

--获取表单数据

--GET和POST区别

-cookie概述

--COOKIE简介

--COOKIE基本使用1

--COOKIE基本使用2

--显示用户上次访问时间

--控制用户登录过期时间1

--控制用户登录过期时间2

--控制用户登录过期时间3

--COOKIE

-session概述

--SESSION概述

--基本应用1

--基本应用2

--综合案例-登录和注销1

--综合案例-登录和注销2

--综合案例-登录和注销3

--综合案例-登录和注销4

--综合案例-登录和注销5

--SESSION和COOKIE区别

-会话管理-作业

-会话管理

PHP操作数据库

-MySQL和PHPMyadmin概述

--MySQL概述1

--MySQL概述2

--PHPMyadmin概述1

--PHPMyadmin概述2

--PHPMyadmin的导入和导出操作

-PHP访问MySQL

--连接服务器

--选择数据库

--浏览表内容1

--浏览表内容2

--MySQLi扩展的应用1

--mysqli扩展应用2-将数据添加到数据库中

--使用mysqli扩展添加数据到数据库中

--使用mysqli扩展删除数据库中数据

--使用mysqli扩展修改数据库中数据

--mysqli扩展应用3-设计删除链接

--MySQLi扩展应用4-完成数据库中数据的删除

--mysqli扩展应用5---编辑链接和编辑页面的设计

--mysqli扩展应用6---编辑数据库中的信息

--mysqli扩展7-条件查询数据表中的数据

-MySQL扩展的使用

--数据表内容显示页面

--添加数据页面1

--添加数据页面2

--删除页面1

--删除页面2

--删除页面3

--数据修改页面1

--数据修改页面2

--数据修改页面3

-PHP操纵数据库

图像基本操作1笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。