Изменить Zend изображение стиль капчи - PullRequest
4 голосов
/ 06 мая 2011

У меня есть изображение captcha в форме Zend

$captcha = new Zend_Form_Element_Captcha('captcha', array('captcha' => array(
    'captcha'   => 'Image',
    'label'     => 'Rasmdagi belgilarni kiriting',
    'required'  => true,
    'wordLen'   => 5,
    'width'     => 150,
    'height'    => 40,
    'timeout'   => 300,
    'fontSize'  => 32,
    'gcFreq'    => 5,
    'font'      => 'files/captcha/fonts/4.ttf',
    'imgDir'    => 'files/captcha/image',
    'imgUrl'    => '/files/captcha/image',
)));
$captcha->setIgnore(true);

Я должен изменить его стиль (фон).

Ответы [ 2 ]

2 голосов
/ 06 мая 2011

Я считаю, что вы не можете изменить фон изображения капчи.Это жестко закодировано в Zend_Captcha_Image.Вы должны будете создать свой собственный класс изображения капчи, например, My_Captcha_Image, расширив Zend_Captcha_Image и изменив строку / линии фона установки изображения.

0 голосов
/ 10 января 2013

Да, цвет фона жестко закодирован в ядре, но вы все равно можете его изменить!
Просто найдите функцию _generateImage внутри основных файлов и измените способ создания фона

Напр .: Чтобы изменить цвет фона, измените строки:

$ bg_color = imagecolorallocate ($ img, 255, 255, 255);

И

$ bg_color = imagecolorallocate ($ img2, 255, 255, 255);

...