= $columns) { $packs[] = $currentPack; $currentPack = []; } $currentPack[] = $member["color"]; } if (count($currentPack) > 0) $packs[] = $currentPack; $newPacks = []; foreach ($packs as $pack) { usort($pack, function ($a, $b) { $vra = hexdec(substr($a, 0, 2)); $vga = hexdec(substr($a, 2, 2)); $vba = hexdec(substr($a, 4, 2)); $hsla = rgbToHsl($vra, $vga, $vba); $ra = $hsla[2] * $hsla[1]; $vrb = hexdec(substr($b, 0, 2)); $vgb = hexdec(substr($b, 2, 2)); $vbb = hexdec(substr($b, 4, 2)); $hslb = rgbToHsl($vrb, $vgb, $vbb); $rb = $hslb[2] * $hslb[1]; return $rb < $ra; }); while (count($pack) < $columns) $pack[] = "ffffff"; $newPacks[] = $pack; } $img = imagecreatetruecolor($columns, $columns); $factor = 64; for ($y = 0; $y < $columns; ++$y) { for ($x = 0; $x < $columns; ++$x) { imagesetpixel($img, $x, $y, imagecolorallocate($img, hexdec(substr($newPacks[$y][$x], 0, 2)), hexdec(substr($newPacks[$y][$x], 2, 2)), hexdec(substr($newPacks[$y][$x], 4, 2)))); } } $img2 = imagecreatetruecolor($columns * $factor, $columns * $factor); imagecopyresampled($img2, $img, 0, 0, 0, 0, $columns * $factor, $columns * $factor, $columns, $columns); imagepng($img2, "/tmp/image.png"); $img3 = imageCreateCorners("/tmp/image.png", $columns * 10); unlink("/tmp/image.png"); imagepng($img3, $_SERVER['DOCUMENT_ROOT'] . "/assets/logo/newlogo.png"); for ($x = 1; $x <= 120; $x++) { imagefilter($img2, IMG_FILTER_GAUSSIAN_BLUR); } imagefilter($img2, IMG_FILTER_BRIGHTNESS, -100); imagepng($img2, "/tmp/image.png"); $img3 = imageCreateCorners("/tmp/image.png", $columns * 10); unlink("/tmp/image.png"); imagepng($img3, $_SERVER['DOCUMENT_ROOT'] . "/assets/logo/newlogo-template.png");