Вход Регистрация
Файл: captcha.php
Строк: 24
<?php
$letters 
'ABCDEFGKIJKLMNOPQRSTUVWXYZ'// алфавит

  
$caplen 3//длина текста
  
$width 120$height 30//ширина и высота картинки
  
$font 'comic.ttf';//шрифт текста
  
$fontsize 17;// размер текста

  
header('Content-type: image/png'); //тип возвращаемого содержимого (картинка в формате PNG)

  
$im imagecreatetruecolor($width$height); //создаёт новое изображение
  
imagesavealpha($imtrue); //устанавливает прозрачность изображения
  
$bg imagecolorallocatealpha($im000127); //идентификатор цвета для изображения
  
imagefill($im00$bg); //выполняет заливку цветом
 
  
putenv'GDFONTPATH=' realpath('.') ); //проверяет путь до файла со шрифтами

  
$captcha '';//обнуляем текст
  
for ($i 0$i $caplen$i++)
  {
    
$captcha .= $lettersrand(0strlen($letters)-1) ]; // дописываем случайный символ из алфавила
    
$x = ($width 20) / $caplen $i 10;//растояние между символами
    
$x rand($x$x+4);//случайное смещение
    
$y $height - ( ($height $fontsize) / ); // координата Y
    
$curcolor imagecolorallocate$imrand(0100), rand(0100), rand(0100) );//цвет для текущей буквы
    
$angle rand(-2525);//случайный угол наклона
    
imagettftext($im$fontsize$angle$x$y$curcolor$font$captcha[$i]); //вывод текста
  
}

  
// открываем сессию для сохранения сгенерированного текста
  
session_start();
  
$_SESSION['capcha'] = $captcha;

  
imagepng($im); //выводим изображение
  
imagedestroy($im);//отчищаем память
?>
Онлайн: 2
Реклама