Как написать текст на изображении onfly в php? - PullRequest
0 голосов
/ 18 марта 2012

Я хочу сделать изображение "onfly" с некоторым текстом. Это возможно с php? Я пытаюсь с этим, но ничего не выходит, может кто-нибудь посмотреть мой код, пожалуйста?

function createCaptcha($string){
    $image = PATH_DIR . "blueprint/images/bg6.png";
    $text_vertical_position = 97;
    $font_size = 15;
    $color = '32a53d';
    Header ("Content-type: image/png");
    $color = convert_to_rgb($color);
    $info = GetImageSize($image);
    $width = $info[0];
    $height = $info[1];


    if (preg_match("/.gif/", $image)) {
        $image = imageCreateFromGif($image);
    } elseif (preg_match("/.png/", $image)) {
        $image = imageCreateFromPng($image);
    } elseif (preg_match("/.jpg/", $image)) {
        $image = imageCreateFromJpeg($image);
    } elseif (preg_match("/.jpeg/", $image)) {
        $image = imageCreateFromJpeg($image);
    }

    $imgcolor = ImageColorAllocate ($image, $color[0], $color[1], $color[2] );
    imagettftext($image, $font_size, 0, $start_length, $text_vertical_position,
                 $imgcolor, $font , $text);
    ImagePNG ($image);
    ImageDestroy ($image);
}

Я использую codeigniter, чтобы сделать это.

Спасибо

1 Ответ

1 голос
/ 18 марта 2012

Кажется, вы допустили ошибку в параметре функции: $string не $text

 imagettftext($image, $font_size, 0, $start_length, $text_vertical_position,
      $imgcolor, $font, $string);

PS. Если вы сделаете капчу - это не будет надежно без каких-либо дополнительных искажений изображения.

Почему бы не использовать готовые решения?

http://www.phpcaptcha.org/

http://www.captcha.ru/kcaptcha/

...