欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

超级菜解析 osc 注册时图片验证码

程序员文章站 2022-05-03 08:52:34
...
跳至
function getMostRepeated($array)
{
    $count = array_count_values($array);
    arsort($count);
    $keys = array_keys($count);

    return $keys[1];
}

function fixImg($url)
{
    $img = imagecreatefrompng($url);

    $with = imagesx($img);
    $height = imagesy($img);
    $middle = $height / 2;

    $colors = array();

    for ($i = 0; $i < $with; ++$i) {
        $color = imagecolorat($img, $i, $middle);
        $colors[] = $color;
    }

    $mainColor = getMostRepeated($colors);

    for ($x = 0; $x < $with; ++$x) {
        for ($y = 0; $y < $height; ++$y) {
            $currentColor = imagecolorat($img, $x, $y);

            if ($currentColor !== $mainColor) {
                $white = imagecolorallocate($img, 0xFF, 0xFF, 0xFF);
                imagesetpixel($img, $x, $y, $white);
            }
        }
    }

    return $img;
}

//详情:http://my.oschina.net/gaoshou/blog/126561