За последние 24 часа нас посетили 18612 программистов и 1614 роботов. Сейчас ищет 1751 программист ...

Прозрачность заднего фона капчи

Тема в разделе "Прочие вопросы по PHP", создана пользователем Dante5, 1 окт 2015.

  1. Dante5

    Dante5 Новичок

    С нами с:
    25 янв 2015
    Сообщения:
    26
    Симпатии:
    0
    Помогите как сделать прозрачным задний фон этой капчи
    Код (PHP):
    1. $n1 = rand(1000, 9999);
    2. $n2 = rand(1000, 9999);
    3. $_SESSION['rand_code'] = $n1 + $n2; // Записываем их сумму в сессию
    4. $dir     = "fonts/";
    5. $im     = imagecreatetruecolor(90, 25); // Создаём изображение
    6. $color     = imagecolorallocate($im, 0,0,0); // Задаём 1-й цвет
    7. $white     = imagecolorallocate($im, 255,255,255); // Задаём 2-й цвет
    8. //imagefill($im, 10, 10, $white); 
    9. imagefilledrectangle($im, 0, 0, 399, 127, $white); // Делаем капчу с белым фоном
    10. imagettftext($im, 14, 0, 5, 19, $color, $dir."Alt_integre.ttf", "$n1 + $n2"); // Пишем текст
    11. header("Content-type: image/png"); // Отсылаем заголовок о том, что это изображение png
    12. imagepng($im); // Выводим изображение
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    google: php gd transparent background
    http://stackoverflow.com/a/15246907

    Код (PHP):
    1. <?php
    2. $image = imagecreatetruecolor(100, 100);
    3.  
    4. // Transparent Background
    5. imagealphablending($image, false);
    6. $transparency = imagecolorallocatealpha($image, 0, 0, 0, 127);
    7. imagefill($image, 0, 0, $transparency);
    8. imagesavealpha($image, true);
    9.  
    10. // Drawing over
    11. $black = imagecolorallocate($image, 0, 0, 0);
    12. imagefilledrectangle($image, 25, 25, 75, 75, $black);
    13.  
    14. header('Content-Type: image/png');
    15. imagepng($image); 
     
  3. Dante5

    Dante5 Новичок

    С нами с:
    25 янв 2015
    Сообщения:
    26
    Симпатии:
    0
    спасибо в акурат не хватало выржения
    Код (PHP):
    1. imagesavealpha($image, true);