function vCode($num=4,$size=20, $width=0,$height=0){

!$width && $width = $num*$size*4/5+5;

!$height && $height = $size + 10;

// 去掉了 0 1 O l 等

$str = "23456789abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVW";

$code = '';

for ($i=0; $i

$code.= $str[mt_rand(0, strlen($str)-1)];

}

// 画图像

$im = imagecreatetruecolor($width,$height);

// 定义要用到的颜色

$back_color = imagecolorallocate($im, 235, 236, 237);

$boer_color = imagecolorallocate($im, 118, 151, 199);

$text_color = imagecolorallocate($im, mt_rand(0,200), mt_rand(0,120), mt_rand(0,120));

// 画背景

imagefilledrectangle($im,0,0,$width,$height,$back_color);

// 画边框

imagerectangle($im,0,0,$width-1,$height-1,$boer_color);

// 画干扰线

for($i=0;$i<5;$i++){

$font_color = imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255));

imagearc($im,mt_rand(-$width,$width),mt_rand(-$height,$height),mt_rand(30,$width*2),mt_rand(20,$height*2),mt_rand(0,360),mt_rand(0,360),$font_color);

}

// 画干扰点

for($i=0;$i<50;$i++){

$font_color = imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255));

imagesetpixel($im,mt_rand(0,$width),mt_rand(0,$height),$font_color);

}

// 画验证码

@imagefttext($im, $size , 0, 5, $size+3, $text_color, 'c://WINDOWS//Fonts//simsun.ttc',$code);

header("Cache-Control: max-age=1, s-maxage=1, no-cache, must-revalidate");

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

imagepng($im);

imagedestroy($im);

}

?>

函数描述及例子:

// 4个字符,大小为20vCode(4,20);?>函数来源:PHPCHINA wbsifan

php验证码大小,PHP自定义大小验证码相关推荐

  1. java 自定义生成验证码

    目录 说明 效果展示 Base64编码的文件类型枚举类 验证码默认常量值 验证码生成工具类 使用 说明 项目登录或者其他重要的操作中都要生成验证码,其重要性在此不多说. 主要是介绍自己封装的验证码生成 ...

  2. Matplotlib使用scatter函数在Python中绘制气泡图(bubble plot)、通过size参数指定数据点的大小、自定义不同分组的气泡的色彩

    Matplotlib使用scatter函数在Python中绘制气泡图(bubble plot).通过size参数指定数据点的大小.自定义不同分组的气泡的色彩 目录

  3. 最近开发老遇到莫名其妙的问题,dialog自定义大小,setAttributes这个方法没反应是肿么一回事...

    ============问题描述============ 最近开发老遇到莫名其妙的问题,dialog自定义大小,setAttributes这个方法没反应是肿么一回事,我只想让dialog显示一部分,但 ...

  4. elemntui icon 大小_自定义elementui中的图标

    前提 elementui图标库图标较少 当你想用elementui的控件而不想用它的图标时,就可以使用自定义的方式来实现 实现 el-icon-my-export为我自定义的图标命名 导出 //使用图 ...

  5. 比较两个数的大小,自定义比较两个整数的大小的方法

    比较两个数的大小,自定义比较两个整数的大小的方法: 如果第一个数大,返回1 如果相等返回0 如果第一个数小,返回-1 在Main()方法中输入两个数,调用这个方法 示例: 请输入两个数: 45 56 ...

  6. QMessageBox自定义大小

    问:如何自定义QMessageBox窗体大小? 答:使用styleSheet来进行自定义大小的设置. 示范代码如下: void MainWindow::on_m_qaAbout_triggered() ...

  7. winform的label内容居中_C# Winform label自定义大小与居中实现教程

    在 Winform 中,默认情况下,label 是根据文本自动调整大小的,不能自由设置其宽度和高度,不管怎么修改其宽度与高度,它都会变回原来的值.难道 label大小不能自定义,当然不是,需要先设置 ...

  8. 【CAD】【个人习惯】十字光标大小和自定义右键单击

    目录 1. 十字光标大小 2. 自定义右键单击 1. 十字光标大小 在哪里设置呢??? 点击[工具],再点击[选项],点击[显示],再找到[十字光标大小(Z)] 我个人习惯,右边拉满 2. 自定义右键 ...

  9. element UI 模态层dialog自定义大小

    element dialog有几种定义大小的样式:tiny/small/large/full:自定义大小 custom-class=" " : Dialog 的自定义类名 修改di ...

最新文章

  1. LeetCode 75. 颜色分类(Sort Colors)
  2. MRI原理谁都看得懂版
  3. Mac上运行第一个Hadoop实例
  4. 从C语言的角度重构数据结构系列(二)-如何衡量一个算法的优劣?
  5. java集合框架栈_自己实现集合框架(九):栈接口
  6. HDU-4536 XCOM Enemy Unknown 枚举
  7. 深度解读!时序数据库HiTSDB:分布式流式聚合引擎
  8. linux【报错】userdel: user xiaoming is currently used by process 4713解决
  9. 跟几个程序员聊了聊他们的每月薪资收入
  10. 03|复杂度分析(上):如何分析、统计算法的执行效率和资源消耗?
  11. 【Java从入门到头秃专栏 8】语法篇(七) :反射 动态代理 注解
  12. VS2010 + OpenCV2.3配置 ; 在VS2010下安装配置OpenCV2.3 ; 全程截图,绝对能配置好,不能的留言!...
  13. [转] Difference between Abstract classes and Interfaces
  14. 游戏内存读取工具_不因内存弃旧爱,东芝Canvio Gaming移动硬盘评测
  15. 英特尔新CEO上任后公布首份财报,数据中心业务同比下降20%
  16. linux下vivado编译卡死,vivado+zedboard之Linux编译
  17. Allergo 无法修改单位
  18. Gallery模块管理系统相册,支持从相册中选择图片或视频文件、保存图片或视频文件到相册等功能。通过plus.gallery获取相册管理对象
  19. SAP CO生产订单的标准成本、计划成本、实际成本和目标成本
  20. 【转】eclipse, Log4j配置(真心的详细~)

热门文章

  1. crontab 每天凌晨12点定时器_梦幻西游:梦幻西游冷知识,每天中午12点,哪个NPC最火?...
  2. 树的同构 (25分)
  3. 剪刀手:Android平台上的图片裁剪库
  4. 荣耀路由x1 虚拟服务器,荣耀路由X1增强版怎么设置端口映射规则
  5. 一次excle导入数值精度失真处理过程(附java、python、goland实现代码)
  6. 最全的sublime插件整理
  7. 《JavaWeb系列教程》
  8. beta阶段性能指标测试
  9. 机器学习中分类算法的优缺点
  10. Java 的开源分布式事务解决方案框架 fescar