Вход Регистрация
Файл: captcha.php
Строк: 25
<?php
$letters 
'1234567890'// алфавит
$caplen 5//длина текста
$width 120$height 40//ширина и высота картинки
$font 'fonts/Comfortaa-Light.ttf';//шрифт текста
$fontsize 14;// размер текста
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);//отчищаем память
?>
Онлайн: 1
Реклама