
Would you like to know how we can use PHP Fusion 7 or PHPBB3 CAPTCHA ?
If so , see below links :
How to : Using PHP Fusion 7 CAPTCHA
How to : Using Phpbb3 captcha
Moderator: General Moderators

Really? I didn't know itPHP Fusion 7 CAPTCHA is weak, don't use it. The Phpbb3 CAPTCHA is also relatively weak, you should avoid it.
WowAnd yes you can trust me, I'm a good friend of Aleksey (http://ocr-research.org.ua/)

Well I do not really look at other people's scripts. But if you are interested in waving effects, here is what my CAPTCHA class does:Mds wrote:BTW kaisellgren, could you post some wavy CAPTCHA class links here ?
Code: Select all
private function apply_wave()
{
$xp = $this -> x_period*rand(1,3);
$k = rand(0,100);
for ($a = 0;$a < $this -> width;$a++)
imagecopy($this -> image,$this -> image,$a-1,sin($k+$a/$xp)*$this -> x_amplitude,$a,0,1,$this -> height);
$yp = $this -> y_period*rand(1,2);
$k = rand(0,100);
for ($a = 0;$a < $this -> height;$a++)
imagecopy($this -> image,$this -> image,sin($k+$a/$yp)*$this -> y_amplitude,$a-1,0,$a,$this -> width,1);
}Adding a second sin function with a bigger period and amplitude would be even betterkaisellgren wrote:But if you are interested in waving effects, here is what my CAPTCHA class does:
...
Hmm let me try.VladSun wrote:Adding a second sin function with a bigger period and amplitude would be even betterkaisellgren wrote:But if you are interested in waving effects, here is what my CAPTCHA class does:
...

Code: Select all
<?php
define('SIZEX', 500);
define('SIZEY', 200);
define('FSIZE', 10);
define('Y_AMPL', 3);
define('X_AMPL', 3);
define('Y_PERIOD', 4);
define('X_PERIOD', 4);
define('Y_AMPL2', 15);
define('X_AMPL2', 15);
define('Y_PERIOD2', 50);
define('X_PERIOD2', 50);
$font = 'fonts/arial.ttf';
function apply_wave(&$im)
{
$k = rand(0,100);
for ($a = 0; $a < SIZEX; $a++)
imagecopy($im, $im, $a-1, sin($k+$a/X_PERIOD)*X_AMPL + sin($k+$a/X_PERIOD2)*X_AMPL2, $a, 0, 1, SIZEY);
$k = rand(0,100);
for ($a = 0;$a < SIZEY; $a++)
imagecopy($im, $im, sin($k+$a/Y_PERIOD)*Y_AMPL + sin($k+$a/Y_PERIOD2)*Y_AMPL2, $a-1, 0, $a, SIZEX, 1);
}
header('Content-Type: image/png');
$im = imagecreatetruecolor(SIZEX, SIZEY);
imagettftext($im, 96, 0, 25, SIZEY - 50, imagecolorallocate( $im, 0,0,255), $font, 'PROBE');
apply_wave($im);
imagepng($im);
imagedestroy($im);
?>Code: Select all
header('Content-Type: image/png');
define('SIZEX', 500);
define('SIZEY', 200);
$font = 'fonts/arial.ttf';
$im = imagecreatetruecolor(SIZEX, SIZEY);
imagettftext($im, 96, 0, 25, SIZEY - 50, imagecolorallocate( $im, 0,0,255), $font, 'PROBE');
imagettftext($im, 96, 0, 22, SIZEY - 48, imagecolorallocate( $im, 0,0,0), $font, 'PROBE');
//apply_wave($im);
imagepng($im);
imagedestroy($im);
Code: Select all
$xperiod = 4;
$yperiod = 4;
$xamplitude = 3;
$yamplitude = 3;
// Second wave
$xperiod = 50;
$yperiod = 50;
$xamplitude = 15;
$yamplitude = 15;shadow.png is very weak, however, combined with the wave effect it becomes very strong.VladSun wrote:The purpose of the shadow effect is to make the text contours noncontinuous.
This feature makes the text hard to extract by algorithms.