$7.49 .com domain with free InstantPage Website Builder$1.99 Web Hosting   捷飞网络官方淘宝店   Godaddy 优惠码
返回列表 发帖
分享到:




[PHP 语言] [分享]PHP 验证码可设置字体(大小),可换背景图片,可扭曲角度

//若以下代码有错或不足,请在评论中指出

$img=imagecreatetruecolor(70,25);
* ~" Z+ P8 H0 s! Q4 a  b  ~, m//创建画布
4 ~; d! J1 T4 D+ W$ v) M% h$bgimg=imagecreatefromjpeg("backgroud/background".rand(1,8).'.jpg');6 s- L" [% g0 d7 F3 p3 t
//生成背景图片
* ?# U7 t$ G4 D- [! f+ I) Z9 Y( l) t$bg_x=rand(0,130);# S' V8 E5 ~( C$ P- O5 x8 t
//随机招贴画布起始X轴坐标" C; L7 E+ S, M
$bg_y=rand(0,55);; v1 L" J/ J/ r/ Z" M3 O+ y" F
//随机招贴画布起始Y轴坐标
3 e6 s4 l; ?& u5 y5 ~" b- ]imagecopy($img,$bgimg,0,0,$bg_x,$bg_y,$bg_x+70,$bg_y+25);/ L+ r- z& v5 U; F' z$ T
//把背景图片$bging粘贴的画布上

//生成随机字符串0 R0 z3 F6 F7 L- c7 T
function creaStr($len){
- w2 k2 b+ Y, |/ d( R9 `     $arr1=range(0,9);: D" A+ T# w$ v# h" E
     $arr2=range(a,z);* X' x1 M' n. A- @' n/ S
     $arr3=range(A,Z);
3 i- U4 W( B' c/ `: y+ g- N" ^     $arr=array_merge($arr1,$arr2,$arr3);. \& z4 l' |4 f# K3 n! H
     str_shuffle($arr);
  c$ A& ^* ?. I$ T7 V' @! P5 U( L     $str="";$ R  }  f" D2 n! Y- t
     for($i=0;$i<$len;$i++){! p  `& a# @( V8 m, I
            $str.=$arr[rand(0,61)];# B) G7 N" x8 D# F" f* b
     }
# @* b% o0 p0 D2 V( S    return $str;
# A0 p2 f$ i4 A" T( c0 c}

$font='Astarisborn.TTF'; //字体( m+ T3 C5 g$ I9 O; ?
$str=creaStr(4); //字符串
+ ?8 T- G. H( l) D% h/ a; P* h! ufor($i=0,$j=5;$i<4;$i++){
8 {( D2 L1 k3 ^$ |) D0 B: }# M' f! b      $array = array(-1,1);3 L8 J, _6 c0 b( D
      $p = array_rand($array);
# n1 E$ p& a2 L6 I* @" \7 k      $an = $array[$p]*mt_rand(1,10); //扭曲角度2 _6 u: ?' e# j, U5 @; j) ?
      $size = 14;//字体大小  c' x; L4 g1 Y$ e7 F7 Y8 s+ `
      imagettftext($img, $size, $an, $j,rand(13,20),imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100)), $font, $str[$i]);//生成验证字符窜
& @6 @, c4 y4 `( L' e, Q      $j+=15;2 A* r) c  T  a' G
}) Y5 o# f; G% y3 {$ s- `" H! {) |# ]7 J
header('Content-type:image/png');7 ?+ G- H- G% T5 ~
imagepng($img);* |- m4 c4 ?: H
imagedestroy($img);

1 v( Y$ I6 U5 {3 z; H

/ D# }4 I9 }" C( s1 W4 a参考:
# ]0 w. u. c) |# l9 S4 Khttp://blog.csdn.net/redhat_520/article/details/7652103http://blog.csdn.net/yanhui_wei/article/details/7985225
' \% s8 v8 Y- c$ shttp://www.t086.com/code/php/function.php-ImageTTFText.php
/ h, a( ?+ N7 R1 Fhttp://www.t086.com/code/php/group.php-20.php


返回列表
Namecheap
Namecheap.com - Cheap domain name registration, renewal and transfers - Free SSL Certificates - Web Hosting
互联网安全