Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function c1(&$c, $rand) {
- if($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] >= 220){
- $c['red'] = $rand[0];
- $c['green'] = $rand[1];
- $c['blue'] = $rand[2];
- }
- if($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] <= 30){
- $c['red'] = $rand[0] * 0.8;
- $c['green'] = $rand[1] * 0.8;
- $c['blue'] = $rand[2] * 0.8;
- }
- };
- function c2(&$c, $rand) {
- if($c['red'] >= 240 && $c['green'] >= 240 && $c['blue'] <= 10){
- $c['red'] = $rand[0];
- $c['green'] = $rand[1];
- $c['blue'] = $rand[2];
- }
- if($c['red'] >= 240 && $c['green'] <= 10 && $c['blue'] <= 10){
- $c['red'] = $rand[0] * 0.6;
- $c['green'] = $rand[1] * 0.6;
- $c['blue'] = $rand[2] * 0.6;
- }
- };
- function c3(&$c, $rand) {
- if ($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] >= 220) {
- $c['red'] = $rand[0];
- $c['green'] = $rand[1];
- $c['blue'] = $rand[2];
- }
- if ($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] <= 30) {
- $c['red'] = $rand[0] * 0.8;
- $c['green'] = $rand[1] * 0.8;
- $c['blue'] = $rand[2] * 0.8;
- }
- if ($c['red'] >= 240 && $c['green'] >= 240 && $c['blue'] <= 10) {
- $c['red'] = $rand[0] * 0.6;
- $c['green'] = $rand[1] * 0.6;
- $c['blue'] = $rand[2] * 0.6;
- }
- if ($c['red'] >= 240 && $c['green'] <= 10 && $c['blue'] <= 10) {
- $c['red'] = $rand[0] * 0.4;
- $c['green'] = $rand[1] * 0.4;
- $c['blue'] = $rand[2] * 0.4;
- }
- };
- function getColor(){
- return mt_rand(0,255);
- };
- function soboken($dir, $user_id){
- $h = 388;
- $w = 344;
- $canvas = imagecreatetruecolor($w,$h);
- $randNum = mt_rand(1,4);
- $img_src = 'img/soboken' . $randNum . '.jpg';
- $id = uniqid($randNum);
- $path = $dir . '/' . $user_id . '.png';
- $image = imagecreatefromjpeg($img_src);
- $rand1 = [getColor(), getColor(), getColor()];
- $rand2 = [getColor(), getColor(), getColor()];
- $i=0;
- for ($y = 0; $y < $h; $y++){
- for($x = 0; $x < $w; $x++){
- if ($i % 5 === 0){
- $irand = mt_rand(0,2);
- $rand1[$irand] = min($rand1[$irand] * 1.00011, 255);
- $rand2[$irand] = min($rand2[$irand] * 1.00011, 255);
- }
- $index = imagecolorat($image, $x,$y);
- $data = imagecolorsforindex($image, $index);
- c1($data, $rand1);
- c2($data, $rand2);
- c3($data, $rand1);
- $color = imagecolorallocatealpha($canvas, $data['red'], $data['green'], $data['blue'], $data['alpha']);
- imagesetpixel($canvas, $x,$y, $color);
- $i++;
- }
- }
- imagepng($canvas,$path,9);
- imagedestroy($canvas);
- imagedestroy($image);
- return $path;
- };
- echo soboken('../i', 100500); // папка для записи "i", путь к файлу
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement