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




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

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

$img=imagecreatetruecolor(70,25);
2 J4 `, [& M: i& r3 |( O  j, |//创建画布, c. U: y; b& k; {- V
$bgimg=imagecreatefromjpeg("backgroud/background".rand(1,8).'.jpg');" m& o" h6 D0 b
//生成背景图片
7 t. d5 Z( P; S$ U# K- N" C$bg_x=rand(0,130);
3 I) V3 D  A$ [1 j8 c0 g7 @! g: }//随机招贴画布起始X轴坐标
$ [! J& Z$ D9 N) `$bg_y=rand(0,55);
5 X) w: l. C6 P# C: J( D//随机招贴画布起始Y轴坐标+ e) M; p4 F  q0 q- S
imagecopy($img,$bgimg,0,0,$bg_x,$bg_y,$bg_x+70,$bg_y+25);
6 S2 o# Z# h0 @//把背景图片$bging粘贴的画布上

//生成随机字符串2 j1 f" |" N7 [. C  G" i4 _, f, A8 ^
function creaStr($len){# ?: H/ c9 i2 C/ @$ c, }' H9 E
     $arr1=range(0,9);
% h' y4 D- \2 Q( H     $arr2=range(a,z);5 B, B& ~& m$ {
     $arr3=range(A,Z);1 T& ^$ R4 \4 Z* ^
     $arr=array_merge($arr1,$arr2,$arr3);7 U. d. B2 r. N& g
     str_shuffle($arr);
* q! i  X: I* F- O& J     $str="";; y9 j) L7 G5 \. o
     for($i=0;$i<$len;$i++){: X4 y3 O" n; T0 m6 i% q- W' |, x
            $str.=$arr[rand(0,61)];
6 u( H7 c# U- Y; u; N/ a5 j8 `     }
, D* h3 n& a# a/ z7 ^% N! |# J    return $str;% G5 i' w/ \5 j0 l9 Z! m& u  a& ?: n
}

$font='Astarisborn.TTF'; //字体( E& _9 K5 L! r
$str=creaStr(4); //字符串
% b! c8 ]+ Z1 s1 M6 g. R8 Vfor($i=0,$j=5;$i<4;$i++){% {* G+ m# u3 K2 U5 |! I
      $array = array(-1,1);2 R1 L( m! H) E1 _5 {
      $p = array_rand($array);& O  B2 t+ k7 l/ E0 ?+ v9 R  e9 D
      $an = $array[$p]*mt_rand(1,10); //扭曲角度
6 M7 |. `% N0 V$ n1 B; k      $size = 14;//字体大小
; j9 c% {5 K9 D9 P9 y      imagettftext($img, $size, $an, $j,rand(13,20),imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100)), $font, $str[$i]);//生成验证字符窜) v- Q) I& @0 I
      $j+=15;- B" ?) J$ @, w: X+ o2 ~0 J
}
+ F* J4 B, t7 a  b; c# y; Yheader('Content-type:image/png');
# t0 G( ?; |5 C- m7 D. zimagepng($img);
" C4 u" W* D; y" Z  Gimagedestroy($img);

! r3 \& E4 K& f  r8 p0 q6 g

. O( a  g$ e9 |  o参考:
# i$ K% u) A* x/ N3 \http://blog.csdn.net/redhat_520/article/details/7652103http://blog.csdn.net/yanhui_wei/article/details/7985225& y0 Q! A' F: ]5 H9 l4 l
http://www.t086.com/code/php/function.php-ImageTTFText.php; j6 q0 y1 p/ L- O
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
互联网安全