Вход Регистрация
Файл: captcha.php
Строк: 39
<?php

session_start
();
$width 80;                //Ширина изображения
$height 33;                //Высота изображения
$font_size 10;               //Размер шрифта
$let_amount 4;            //Количество символов, которые нужно набрать
$fon_let_amount 30;        //Количество символов на фоне
$font 'font.ttf';            //Путь к шрифту
 
//набор символов
$letters = array(1234567890'a''b''c''d''f''g''h');        
//цвета
$colors = array(90110130150170190210);
 
$src imagecreatetruecolor($width$height);    //создаем изображение                
$fon imagecolorallocate($src255255255);    //создаем фон
imagefill($src00$fon);                        //заливаем изображение фоном
 
for($i 0$i $fon_let_amount; ++$i)            //добавляем на фон символы
{
    
//случайный цвет
       
$color imagecolorallocatealpha($srcrand(0255), rand(0255), rand(0255), 110);    
       
//случайный символ
       
$letter $letters[rand(0sizeof($letters) - 1)];    
    
//случайный размер                                
       
$size rand($font_size 2$font_size 2);                                            
       
imagettftext($src$sizerand(045),
    
rand($width 0.1$width $width 0.1),
    
rand($height 0.2$height), $color$font$letter);
}
 
for(
$i 0$i $let_amount; ++$i)        //то же самое для основных символов
{
   
$color imagecolorallocatealpha($src$colors[rand(0sizeof($colors) - 1)],
   
$colors[rand(0sizeof($colors) - 1)],
   
$colors[rand(0sizeof($colors) - 1)], rand(2040)); 
   
$letter $letters[rand(0sizeof($letters) - 1)];
   
$size rand($font_size 2$font_size 2);
   
$x = ($i 1) * $font_size rand(15);        //даем каждому символу случайное смещение
   
$y = (($height 2) / 3) + rand(05);                            
   
$cod[] = $letter;                           //запоминаем код
   
imagettftext($src$sizerand(015), $x$y$color$font$letter);
}

$cod implode(''$cod);                    //переводим код в строку
$_SESSION['captcha'] = $cod;

header("Content-type: image/gif");         //выводим готовую картинку
imagegif($src);
imagedestroy($src); 
?>
Онлайн: 0
Реклама