imagettftext example



        $color = str_split(substr($color, 0, 6), 2);
        $color = imagecolorclosestalpha($srchexdec($color[0])hexdec($color[1])hexdec($color[2])$opacity);

        $xAxis = $isShadow ? $options['xShadow'] : $options['xAxis'];
        $yAxis = $isShadow ? $options['yShadow'] : $options['yAxis'];

        // Add the shadow to the source image         if (empty($options['fontPath'])) {
            // We have to add fontheight because imagettftext locates the bottom left corner, not top-left corner.             imagettftext($src$options['fontSize'], 0, (int) $xAxis(int) ($yAxis + $options['fontheight'])$color$options['fontPath']$text);
        } else {
            imagestring($src(int) $options['fontSize'](int) $xAxis(int) $yAxis$text$color);
        }

        $this->resource = $src;
    }

    /** * Return image width. * * @return int */


        $black = (int) imagecolorallocate($im(int) $colors[0](int) $colors[1](int) $colors[2]);

        $string = implode(' ', str_split($string));

        if (!empty($font)) {
            for ($i = 0, $iMax = \strlen($string)$i < $iMax; ++$i) {
                $rand1 = Random::getInteger(35, 40);
                $rand2 = Random::getInteger(15, 20);
                $rand3 = Random::getInteger(60, 70);
                imagettftext($im$rand1$rand2($i + 1) * 15, $rand3$black$font$string[$i]);
                imagettftext($im$rand1$rand2(($i + 1) * 15) + 2, $rand3 + 2, $black$font$string[$i]);
            }
            for ($i = 0; $i < 8; ++$i) {
                imageline($im, Random::getInteger(30, 70), Random::getInteger(0, 50), Random::getInteger(100, 150),
                    Random::getInteger(20, 100)$black);
                imageline($im, Random::getInteger(30, 70), Random::getInteger(0, 50), Random::getInteger(100, 150),
                    Random::getInteger(20, 100)$black);
            }
        } else {
            $white = (int) imagecolorallocate($im, 255, 255, 255);
            imagestring($im, 5, 40, 35, $string$white);
            
if ($filesystem->exists($this->backgroundPath)) {
            /** @var \GdImage $img */
            $img = imagecreatefrompng($this->backgroundPath);
        } else {
            /** @var \GdImage $img */
            $img = imagecreate(self::FALLBACK_WIDTH_IMAGE, self::FALLBACK_HEIGHT_IMAGE);
            imagecolorallocate($img, 255, 255, 255);
        }

        $codeColor = (int) imagecolorallocate($img, 0, 0, 0);
        if ($filesystem->exists($this->fontPath)) {
            imagettftext($img, 45, 0, 80, 55, $codeColor$this->fontPath, $code);
        } else {
            imagestring($img, 5, 100, 20, $code$codeColor);
        }

        ob_start();
        imagepng($img, null, 9);
        $image = (string) ob_get_clean();
        imagedestroy($img);
        $image = base64_encode($image);

        return new BasicCaptchaImage($code$image);
    }
Home | Imprint | This part of the site doesn't use cookies.