Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] img -> txt
zYm3N
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 29.08.2004
Skąd: POLAND

Ostrzeżenie: (0%)
-----


Może komuś się przyda/kogoś zainteresuje..

nie miałem gdzie tego rzucić:-)

http://imagelab.pl/zymen/ascii/

Działa dla jpg/png. Nad gif-ami pracuję :-)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
zYm3N
post
Post #2





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 29.08.2004
Skąd: POLAND

Ostrzeżenie: (0%)
-----


Może kogoś zainteresuje ? :-)
Co do kolorów, tło psuje trochę, ale jak ustawie białe, to całkiem dziwnie wygląda :] może w przyszłości stworzę dynamiczne (ustawiane przez użytkownika :])..

Reszta kodu tutaj: Jak widać, nic nie uśredniam.. no a zmniejszyć nie mogę, bo wtedy będą zbyt mocne przejścią pomiędzy punktami.. no chyba, że zrobię zmniejszenie,ale wtedy obrazki staną się mniej widoczne.. :|

  1. <html>
  2. <head>
  3. <link href=\"zymen.css\" rel=\"stylesheet\" type=\"text/css\">
  4. </head>
  5. <body>
  6. <form action=\"index.php\" method=\"GET\">
  7. <table border=1 cellspacing=0 cellpadding=0 align=\"center\">
  8. <tr><td style=\"color:rgb(255,255,255)\">Http pliku:</td><td><input type=\"text\" name=\"nazwa_pliku\" class=\"text\" value=\"<?=$_GET['nazwa_pliku'];?>\"></td></tr>
  9. <tr><td colspan=2 align=\"center\"><input type=\"submit\" value =\"Twórz!\"></td></tr>
  10. </table>
  11. </form> <BR><BR>
  12.  
  13. <?
  14.  if (isset($_GET['nazwa_pliku']))
  15.  {
  16.  $plik_in = fopen($_GET['nazwa_pliku'], &#092;"r\");
  17.  $extension = eregi(&#092;"[.](jpg|jpeg|gif|png)$\",$_GET['nazwa_pliku'], $out);
  18.  $file_name_tmp = &#092;"tmp/\".rand(0,10000).$out[0];
  19.  $plik_out = fopen( $file_name_tmp, &#092;"w\");
  20.  //udalo sie ?
  21.  if (!$plik_in || !$plik_out)
  22.  {
  23. echo('<p style=\"font-size:10px; color:rgb(255,255,0)\">I can't read file!</p>');
  24. exit();
  25.  }
  26.  //to czytajmy!
  27.  while(!feof($plik_in))
  28.  {
  29.  $data = fread($plik_in, 128);
  30.  fwrite($plik_out, $data);
  31.  }
  32.  fclose($plik_in);
  33.  fclose($plik_out);
  34.  
  35.  
  36.  
  37.  switch(strtolower($out[1]))
  38.  {
  39.  case 'jpg':case 'jpeg':{$pict = ImageCreateFromJPEG($file_name_tmp);break;}
  40.  case 'gif':{$pict = ImageCreateFromGIF($file_name_tmp);break;}
  41.  case 'png':{$pict = ImageCreateFromPNG($file_name_tmp);break;}
  42.  }
  43. // header('Content-type: image/png');
  44.  $x = imagesx($pict);
  45.  $y = imagesy($pict);
  46.  
  47.  $tekst = \"@\";
  48.  
  49.  $rozmycie = 10;
  50.  
  51.  
  52.  echo('<span>');
  53.  $ktory_znak=0;
  54.  for($y_=0; $y_<$y; $y_+=3)
  55.  {
  56.  for($x_=0; $x_<$x; $x_+=2.25)
  57.  {
  58. $ktory_znak+=1;
  59. // $znak = $tekst[$ktory_znak%strlen($tekst)];
  60. $znak = $tekst[rand(0,count($tekst)-1)];
  61.  
  62. $rgb = ImageColorAt($pict, $x_, $y_);
  63. if ($ostatni_kolor+$rozmycie >= $rgb && $ostatni_kolor-$rozmycie <= $rgb)
  64. {
  65. echo($znak);
  66. }else
  67. {
  68. $r = ($rgb >> 16) & 0xFF;
  69. $g = ($rgb >> 8) & 0xFF;
  70. $b = $rgb & 0xFF;
  71. $ostatni_kolor=$rgb;
  72. echo('</span>'.'<span style=&#092;"color:rgb('.$r.','.$g.','.$b.');\">'.$znak);
  73. }
  74.  }
  75.  echo(&#092;"</span><br>n\");
  76.  $ostatni_kolor=-1;
  77.  }
  78.  unlink( $file_name_tmp);
  79.  }
  80.  include('licznik.php');
  81. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 14:14