Advertisement
Guest User

Untitled

a guest
Jul 16th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.93 KB | None | 0 0
  1. <?php
  2.  
  3. function c1(&$c, $rand) {
  4. if($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] >= 220){
  5. $c['red'] = $rand[0];
  6. $c['green'] = $rand[1];
  7. $c['blue'] = $rand[2];
  8. }
  9. if($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] <= 30){
  10. $c['red'] = $rand[0] * 0.8;
  11. $c['green'] = $rand[1] * 0.8;
  12. $c['blue'] = $rand[2] * 0.8;
  13. }
  14. };
  15.  
  16.  
  17. function c2(&$c, $rand) {
  18. if($c['red'] >= 240 && $c['green'] >= 240 && $c['blue'] <= 10){
  19. $c['red'] = $rand[0];
  20. $c['green'] = $rand[1];
  21. $c['blue'] = $rand[2];
  22. }
  23. if($c['red'] >= 240 && $c['green'] <= 10 && $c['blue'] <= 10){
  24. $c['red'] = $rand[0] * 0.6;
  25. $c['green'] = $rand[1] * 0.6;
  26. $c['blue'] = $rand[2] * 0.6;
  27. }
  28. };
  29.  
  30.  
  31. function c3(&$c, $rand) {
  32. if ($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] >= 220) {
  33. $c['red'] = $rand[0];
  34. $c['green'] = $rand[1];
  35. $c['blue'] = $rand[2];
  36. }
  37. if ($c['red'] <= 30 && $c['green'] >= 230 && $c['blue'] <= 30) {
  38. $c['red'] = $rand[0] * 0.8;
  39. $c['green'] = $rand[1] * 0.8;
  40. $c['blue'] = $rand[2] * 0.8;
  41. }
  42. if ($c['red'] >= 240 && $c['green'] >= 240 && $c['blue'] <= 10) {
  43. $c['red'] = $rand[0] * 0.6;
  44. $c['green'] = $rand[1] * 0.6;
  45. $c['blue'] = $rand[2] * 0.6;
  46. }
  47. if ($c['red'] >= 240 && $c['green'] <= 10 && $c['blue'] <= 10) {
  48. $c['red'] = $rand[0] * 0.4;
  49. $c['green'] = $rand[1] * 0.4;
  50. $c['blue'] = $rand[2] * 0.4;
  51. }
  52. };
  53.  
  54.  
  55. function getColor(){
  56. return mt_rand(0,255);
  57. };
  58.  
  59. function soboken($dir, $user_id){
  60. $h = 388;
  61. $w = 344;
  62.  
  63. $canvas = imagecreatetruecolor($w,$h);
  64.  
  65. $randNum = mt_rand(1,4);
  66. $img_src = 'img/soboken' . $randNum . '.jpg';
  67.  
  68. $id = uniqid($randNum);
  69. $path = $dir . '/' . $user_id . '.png';
  70.  
  71. $image = imagecreatefromjpeg($img_src);
  72.  
  73. $rand1 = [getColor(), getColor(), getColor()];
  74. $rand2 = [getColor(), getColor(), getColor()];
  75.  
  76. $i=0;
  77.  
  78. for ($y = 0; $y < $h; $y++){
  79. for($x = 0; $x < $w; $x++){
  80.  
  81. if ($i % 5 === 0){
  82. $irand = mt_rand(0,2);
  83. $rand1[$irand] = min($rand1[$irand] * 1.00011, 255);
  84. $rand2[$irand] = min($rand2[$irand] * 1.00011, 255);
  85. }
  86.  
  87. $index = imagecolorat($image, $x,$y);
  88. $data = imagecolorsforindex($image, $index);
  89.  
  90. c1($data, $rand1);
  91. c2($data, $rand2);
  92. c3($data, $rand1);
  93.  
  94. $color = imagecolorallocatealpha($canvas, $data['red'], $data['green'], $data['blue'], $data['alpha']);
  95. imagesetpixel($canvas, $x,$y, $color);
  96. $i++;
  97. }
  98. }
  99.  
  100. imagepng($canvas,$path,9);
  101.  
  102. imagedestroy($canvas);
  103. imagedestroy($image);
  104.  
  105. return $path;
  106. };
  107.  
  108. echo soboken('../i', 100500); // папка для записи "i", путь к файлу
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement