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




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

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

$img=imagecreatetruecolor(70,25);
7 }4 M& r2 g' [7 J: a& i% z//创建画布' n3 ^1 j* a7 n' J  G
$bgimg=imagecreatefromjpeg("backgroud/background".rand(1,8).'.jpg');  u- }/ Y7 p8 E
//生成背景图片* t7 g% q9 b3 H: d% Y0 O7 h3 Q+ I
$bg_x=rand(0,130);7 ?" X  l. V$ f% _: m5 K4 ]. }
//随机招贴画布起始X轴坐标0 F, Q: h& j; b% ?9 s+ n2 k
$bg_y=rand(0,55);" a: G$ |: z; @1 U1 `
//随机招贴画布起始Y轴坐标+ ]8 }* B* a3 }4 K- h5 @* B6 Y
imagecopy($img,$bgimg,0,0,$bg_x,$bg_y,$bg_x+70,$bg_y+25);  D1 {  G6 o+ ~
//把背景图片$bging粘贴的画布上

//生成随机字符串' a  Q( `. N% [' c$ I' U
function creaStr($len){7 [; F: K* A, N: u1 m$ @3 A$ {
     $arr1=range(0,9);% R7 J; `* S/ e" M. F  J+ N/ _0 n
     $arr2=range(a,z);
  L# g$ u4 D- N  e1 r     $arr3=range(A,Z);/ {- S% n, h0 V# x% p8 L2 `
     $arr=array_merge($arr1,$arr2,$arr3);
# N+ a- |+ X- d     str_shuffle($arr);
" B6 a/ g( w0 J9 u4 i     $str="";
7 A5 Y9 Z- e* W* M& C/ B# t: R     for($i=0;$i<$len;$i++){. f0 R$ Y3 W; O/ Y
            $str.=$arr[rand(0,61)];+ o9 \: w8 l4 _
     }+ z/ E$ x: g# ^+ [5 E
    return $str;
- z$ m4 Y8 O) j: d3 n# i}

$font='Astarisborn.TTF'; //字体
- }' X! M- i3 q; C9 o4 x$str=creaStr(4); //字符串
1 M! Q. h2 _2 z% c  A% Ofor($i=0,$j=5;$i<4;$i++){3 i4 w9 v) @5 ~, ?3 }
      $array = array(-1,1);9 n. S+ D. F9 Q+ w/ I
      $p = array_rand($array);
6 j3 x+ V( e5 I" V5 L( p' ?      $an = $array[$p]*mt_rand(1,10); //扭曲角度* d4 `, g" ~9 v) N/ B
      $size = 14;//字体大小
: g* F( J3 T  l5 m8 c. k( ^; k6 u      imagettftext($img, $size, $an, $j,rand(13,20),imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100)), $font, $str[$i]);//生成验证字符窜$ A# N: A. j5 x
      $j+=15;
/ w' A* v6 [3 d. w0 }. R9 Y; b}5 {% A9 u# {1 a# `
header('Content-type:image/png');; l, I2 g9 Y9 ]. g
imagepng($img);
% X# O1 H: i/ m2 c1 [imagedestroy($img);


9 r. ?* l% l6 s% k  e6 {8 `. c( v$ h% }
参考:. ]2 D* C- K1 Y" f, G2 _6 ~/ y1 k
http://blog.csdn.net/redhat_520/article/details/7652103http://blog.csdn.net/yanhui_wei/article/details/7985225
- J' w- N6 I7 A, p3 }http://www.t086.com/code/php/function.php-ImageTTFText.php
; U. E. ^7 ^* C! P' E# Ohttp://www.t086.com/code/php/group.php-20.php


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