Witam

Ostatnio napisałem generator obrazków, który z kodu 0-1 owego robi obrazki czarny pixel-bialy pixel.

Proszę o ocenę

input.php


  1. <head>
  2. </head>
  3.  
  4. <body>
  5. <form action="generator.php" method="POST">
  6. <?php
  7. $liczba = $_GET['liczba'];
  8. if(empty($liczba) == true)
  9. echo 'podaj zmienna \'liczba\' sposobem GET';
  10. else{
  11. for($x = 0; $x < $liczba; $x++){
  12. ?>
  13. <input type="text" name="<?php echo $x?>"><br />
  14. <?php
  15. }
  16.  
  17. ?>
  18. <input type="hidden" name="liczba" value="<?php echo $liczba?>">
  19. <input type="submit" value="wyslij">
  20. </form>
  21. <?php }?>
  22. </body>
  23.  
  24. </html>




Generator.php

  1. <?php
  2. $liczba = $_POST['liczba'];
  3.  
  4. for($x=0; $x <$liczba; $x++){
  5. $table[$x] = $_POST[$x];
  6. }
  7. for($x=0; $x <=$liczba; $x++){ // wczytanie wszystkich rekordow do drugiej tablicy
  8. $dlug[$x] = strlen($table[$x]);
  9. }
  10.  
  11. rsort($dlug);
  12. $dlugosc = $dlug['0']; // deklarowanie dlugosci najdluzszego rekordu
  13. $ob = imagecreatetruecolor($dlugosc, $liczba); // tworzenie obrazka
  14. $bialy = imagecolorallocate($ob, 255, 255, 255); // definiowanie kolorow
  15. $zolty = imagecolorallocate($ob, 50, 250, 50);
  16. $czarny = imagecolorallocate($ob, 0,0,0);
  17. imagefill($ob, 0,0, $bialy); // pokolorowanie tla
  18. for($x=0; $x<=$liczba; $x++){//zapetla tyle samo jaka jest liczba danych w tablicy
  19. static $c = 0;
  20. for($z=0; $z<=$dlugosc;$z++){ // wczytuje znaki po kolei
  21. if($z==0){
  22. $pixel= substr($table[$c],0,1);
  23. if($pixel == 0){
  24. imageline( $ob, 1, $c, 1, $c, $bialy ); // bialy pixel
  25. }
  26. if($pixel == 1){
  27. imageline( $ob, 1, $c, 1, $c, $czarny); // czarny pixel
  28. }
  29.  
  30. }
  31. if($z > 0 && $z < $dlugosc){
  32. $pixel =substr($table[$c], $z, 1);
  33. if($pixel == 0){
  34. imageline($ob, $z+1, $c,$z+2,$c, $bialy); // bialy pixel
  35. }
  36. if($pixel == 1){
  37. imageline($ob, $z+1, $c,$z+2,$c, $czarny); // czarny pixel
  38. }
  39.  
  40. }
  41. if($z == $dlugosc){
  42. $c++; //zmienia wartosc $x w table[$x]
  43. }
  44. }
  45. }
  46. Header( 'Content-type: image/png');
  47. imagepng($ob) ;
  48.  
  49. imagedestroy($ob);
  50.  
  51. ?>


Jeżeli kod/temat jest na zbyt niskim poziomie proszę o przeniesienie do przedszkola snitch.gif

Pozdrawiam naitsabes