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




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

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

$img=imagecreatetruecolor(70,25);
( D6 X# x$ J7 ~; b1 v8 c, i//创建画布& M8 H2 l* }& f
$bgimg=imagecreatefromjpeg("backgroud/background".rand(1,8).'.jpg');( S& E( D% M( e. v/ S& d- R! D6 J6 Y
//生成背景图片  q2 T: e7 }4 }. V
$bg_x=rand(0,130);
9 t) j- ?, S- Z6 B' O//随机招贴画布起始X轴坐标( t0 S* V$ x& U2 o( Y4 q
$bg_y=rand(0,55);9 q  E4 j, l$ Q
//随机招贴画布起始Y轴坐标5 z* y0 }2 w* l+ B
imagecopy($img,$bgimg,0,0,$bg_x,$bg_y,$bg_x+70,$bg_y+25);' G* R' C4 M! t6 M
//把背景图片$bging粘贴的画布上

//生成随机字符串
% Z* j# A9 F& Pfunction creaStr($len){7 j# `. ~( L3 H6 ^, Y( I
     $arr1=range(0,9);, D" Y; q! ~/ A/ Q9 |
     $arr2=range(a,z);
- i- m9 `0 v. H9 L* \     $arr3=range(A,Z);
7 k$ E0 g: g! ~1 X3 h9 g     $arr=array_merge($arr1,$arr2,$arr3);( F: R& Z& a5 u2 W/ X
     str_shuffle($arr);1 \( Z  T* ^  U! U) o' y
     $str="";& r0 a5 L* u% Y" u
     for($i=0;$i<$len;$i++){" G  c+ W2 L0 Y# ?& G
            $str.=$arr[rand(0,61)];
0 D3 @' ?4 T/ t/ E8 G     }
9 s6 F0 {1 p: R& v: j0 @* n    return $str;
) m+ N8 z# x/ U}

$font='Astarisborn.TTF'; //字体
$ q/ v1 ]* F: M$str=creaStr(4); //字符串; M: ^% E+ |5 q$ y
for($i=0,$j=5;$i<4;$i++){$ `6 l% d0 O+ M1 f
      $array = array(-1,1);4 e7 _# ^8 S6 l- b! a) I1 j& `
      $p = array_rand($array);
' I0 q2 O1 t5 H2 I  |- c; z# f& f6 ]      $an = $array[$p]*mt_rand(1,10); //扭曲角度
5 P) C2 P: A; _$ c, @      $size = 14;//字体大小
; e" R# |" d# ~      imagettftext($img, $size, $an, $j,rand(13,20),imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100)), $font, $str[$i]);//生成验证字符窜2 ~, {1 R. C0 h) G% m
      $j+=15;
( J4 F: L3 z! v: g3 k( Q0 l}
/ V; k' a' L" e0 Y1 xheader('Content-type:image/png');# M; g0 T+ Y; e0 P+ u
imagepng($img);
9 Z/ B; y- F/ Y9 Timagedestroy($img);


8 L) s7 R6 p$ e/ x& h6 k' J/ Q' Y7 M& ]) \$ I1 s2 B" m4 ^  M/ ?
参考:
6 Z& \$ U/ h' [5 |5 i. Whttp://blog.csdn.net/redhat_520/article/details/7652103http://blog.csdn.net/yanhui_wei/article/details/79852251 r( s8 p9 i/ H4 H) q6 B
http://www.t086.com/code/php/function.php-ImageTTFText.php9 F- M/ I/ N4 j+ a
http://www.t086.com/code/php/group.php-20.php


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