简单制作验证码和绘制图片

今天仍然是完善一般处理程序小项目,但是昨天小小的项目已经终结,今天只是完善一下新的样式罢啦,嘿嘿,我们通常在网上浏览图片时间都会看到图片上面呈现有水印字体的样式,其实这些图片都是通过一些简单的小技术来修饰的;另外我们现在在网上随处可见注册页面,当我们想在一个网站上面注册新的用户时间,需要注册完信息以后填写随机生成的验证码,或者我们想要登录一个网站时间也需要验证码的填写,由此可见,验证码也是我们程序员需要必备的小技术哦,下面就来总结一下这两项小功能的实现。

一.图片上的水印字体

我们可以看到第一张图片上面圈出来的IDisposable,我们可以看到Image实现了此接口,而实现了此接口的类都是非托管资源,需要我们释放掉资源,因此就使用了using,而上面和Image相似的就是Image的子类Bitmap,因此在使用它时间同样需要释放资源;另外说的就是我们为什么要把绘制样式的图片另外存放一个一般处理程序,主要是由于它是以流(Image/jpeg)的形式输出,而我们本来的输出方式则是html格式,在第二张图片中在这里是传一个图片的名字即可,然后获取在处理图片程序中获取图片名字,根据路径即可找到图片。针对绘制图片,就是像第四张图片这样的方法,首先获取图片路径,使用Image创建一个对象,然后给Graphics创建一个对象,通过他的一个DraeString方法绘制字体即可,第一个参数为图片呈现的字体内容,第二个参数为字体格式和大小,第三个为字体颜色,接下来的参数局势字体在图片上的位置,最后保存一下即可。

二.简单的验证码制作

1.四位数字样式的验证码

上面是创建了一个数字验证码,其实就是创建一个四位数字的随机数,接下来得到方法就是像上面在图片上绘制字体样式一样,回执即可。上面格式化图片的两个方法都是让其显示的数字居中显示即可。

2.汉字样式的验证码

上面是创建一个四个汉字的验证码,区别在哪里?我已经圈出来啦和上面数字验证码不同的地方,可以参考一下,验证码具体的制作方法就是这样的,至于那些呈现样式模糊或者麻点的样式应该是美工设计的吧,在这里我也没有学习,嘿嘿。

今天就总结到这里,虽然东西不多,但是对待这两个小功能的使用还是很陌生的感觉,似乎使用的对象和方法比较陌生吧,还需要更加熟练的练习,嘿嘿,加油啦~

时间: 2024-10-21 22:48:11

简单制作验证码和绘制图片的相关文章

学习笔记:利用GDI+生成简单的验证码图片

小分享:我有几张阿里云优惠券,用券购买或者升级阿里云相应产品最多可以优惠五折!领券地址:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=ohmepe03 学习笔记:利用GDI+生成简单的验证码图片 1 /// <summary> 2 /// 单击图片时切换图片 3 /// </summary> 4 /// <param name="sender">&

学习MVC之制作验证码

制作验证码的方法在@洞庭夕照 看到的,原文链接:http://www.cnblogs.com/mzwhj/archive/2012/10/22/2720089.html 现自己利用该方法制作一个简单的验证码,运行程序效果如下: 现正式开始: 1.新建项目:VerificationCodeTest 2.选择模板:基本 3.添加图片: 放置位置: 4.重点来了,新建文件夹Image,再新建一个类Text.cs using System; using System.Collections.Generi

Jsp制作验证码

验证码 验证码(CAPTCHA)是"Completely Automated Public Turing test to tell Computers and Humans Apart"(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序.可以防止:恶意破解密码.刷票.论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上用验证码是现在很多网站通行的方式,我们利用比较简易的方式实现了这个功能.这个问题可以由计算

解析最简单的验证码

最近在学python,正好遇到学校需要选宿舍,就用python写了一个抢宿舍的软件.其中有一个模块是用来登陆的,登陆的时候需要输入验证码,不过后来发现了直接可以绕过验证码直接登陆的bug.不过这是另外的话题,开始的时候我并没有发现这个隐藏起来的秘密,所以我就写了这个python代码段用来实现解析验证码的功能. 我们学校的验证码是最简单的验证码,形式大概如下: 其中这个图片的大小是60X24像素的,大概每个数字的大小是15X24像素. 观察这个验证码之后可以发现,验证码中只有数字而且数字的字体很规

Ps简单几步把人物图片转素描画

Ps简单几步把人物图片转素描画 先看一下原图 在看一下最终效果 先简单的说一下大致过程:先把照片去色处理,再用一些滤镜做成类色素描的纹理,然后改变图层混合模式调出线条对比.增加图层蒙版让素描的感觉更逼真些.最后根据图像调整亮度. 1.新建文件导入图片,按键盘Ctrl + Shift + U 去色 2.按键盘Ctrl + I 把副本颜色反相,图层混合模式改为"颜色减淡".(这时画布几乎成为一张白纸) 3.点击菜单"滤镜" > "其它 ">

java使用servlet画出最简单的验证码一

前面已经说明验证码存在的意义,接下来本片文章将讲解如何实现一个简单的验证码. 在进行表单设计时,验证码的增加可以实现是否为"人为"操作,增加验证码可以防止网站数据库信息的冗杂... 验证码作为一个图片,在页面中是"画"出来的,那么它是如何画出来的呢? 其中需要几个生成图片的类: { 1.BufferedImage图像数据缓冲区 2.Graphics绘制图片 3.color获取颜色 4.Random获取随机数 5.ImageIO输出图片 } =============

自己动手用写简单的验证码(JAVA)

自己动手用写简单的验证码(JAVA) import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSer

基于OpenGL编写一个简易的2D渲染框架-04 绘制图片

阅读文章前需要了解的知识,纹理:https://learnopengl-cn.github.io/01%20Getting%20started/06%20Textures/ 过程简述:利用 FreeImage 库加载图像数据,再创建 OpenGL 纹理,通过 Canvas2D 画布绘制,最后又 Renderer 渲染器渲染 本来想用 soil 库加载图像数据的,虽然方便,但是加载有些格式的图像文件时会出现一些问题.最后,改用 FreeImage 库来加载图像了. 添加 FreeImage 库到工

UWP&amp;WP8.1 重新绘制图片 WriteableBitmap用法 图片转byte[]数组,byte[]数组转图片

---恢复内容开始--- WriteableBitmap 是UWP和WP8.1绘制图片的,重组图片的最重要方法.方法较为简单,方法多样性. 通过查看文档,WriteableBitmap的继承性是   WriteableBitmap : BitmapSource [BitmapSource : ImageSource],也就是说WB[WriteableBitmap下文简称]可以直接赋值给Image控件的Source. 用法介绍: WriteableBitmap WB=new WriteableBi